语法:
要指定一个布尔值,使用关键字 TRUE 或 FALSE 。两个都不区分大小写。
代码如下 | 复制代码 |
$foo = True ; // assign the value TRUE to $foo ?> |
通常运算符所返回的 boolean 值结果会被传递给控制流程。
代码如下 | 复制代码 |
// == 是一个操作符,它检测两个变量是否相等,并返回一个布尔值 // 这样做是不必要的... n" ; } // ...因为可以使用下面这种简单的方式: n" ; } ?> |
转换为布尔值
要明确地将一个值转换成 boolean ,用 (bool) 或者 (boolean) 来强制转换。但是很多情况下不需要用强制转换,因为当运算符,函数或者流程控制结构需要一个 boolean 参数时,该值会被自动转换。
当转换为 boolean 时,以下值被认为是 FALSE :
1.布尔值 FALSE 本身
2.整型值 0(零)
3.浮点型值 0.0(零)
4.空字符串,以及字符串 "0"
5.不包括任何元素的数组
6.不包括任何成员变量的对象(仅 PHP 4.0 适用)
7.特殊类型 NULL(包括尚未赋值的变量)
8.从空标记生成的 SimpleXML 对象
所有其它值都被认为是 TRUE (包括任何资源)。
注意:1 和其它非零值(不论正负)一样,被认为是 TRUE !
代码如下 | 复制代码 |
var_dump ((bool) "" ); // bool(false) var_dump ((bool) 1 ); // bool(true) var_dump ((bool) - 2 ); // bool(true) var_dump ((bool) "foo" ); // bool(true) var_dump ((bool) 2.3e5 ); // bool(true) var_dump ((bool) array( 12 )); // bool(true) var_dump ((bool) array()); // bool(false) var_dump ((bool) "false" ); // bool(true) ?> |