empty 和 isset 的区别
程序员文章站
2024-01-13 21:09:40
...
bool empty ( mixed$var )
判断一个变量是否空,也可以理解为判断变量是否为 false。返回布尔值true或false。
除了当变量没有值时不产生警告之外, empty($var) 是 (bool)$var 的反义词。
如果 $var 可以转换为布尔型的false,则 empty()的返回值为true,否则,返回false。
以下七种值,当转换为boolean(同bool)时,被认为是false:
- 布尔型false本身
- 整型0
- 浮点型0.0
- 字符串'0'或"0"
- 空字符串''或""
- 空数组array()或[]
- NULL或null
除此之外的所有值,都被当做是true。
var_dump( (bool)false );
var_dump( (bool)0 );
var_dump( (bool)0.0 );
var_dump( (bool)'0' );
var_dump( (bool)'' );
var_dump( (bool)array() );
var_dump( (bool)null );
?>
empty在false的七种情况下返回true,其余都返回false。
bool isset ( mixed$var [, mixed$... ] )判断变量是否被设置,如果一个变量的值不为null,则说明变量被设置了,此时返回true;否则,返回false。
在下列情况下,一个变量被认为是 null:
- 被赋值为NULL
- 尚未被赋值或被定义
- 已被unset()注销
isset() 在NULL的三种情况下返回false,其余都返回true。
以上就介绍了empty 和 isset 的区别,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。