用isset()和empty()判断下面的变量。
$str = '';
$int = 0 ;
$arr = array();
isset($str) 返回的是 true 还是 false
empty($int) 返回什么
empty($arr)返回什么
答案:
分别是 true true true
解释:
isset函数特性.
任何被赋值的变量,都会是isset状态. 当然NULL是特殊类型,$str = NULL; 使用isset($str) 则为false .
$str = NULL;
$str2 = &$str;
var_dump(isset($str2)); //此处来false
$str = '';
var_dump(isset($str2)); //此处来true
另外,该函数只能判断变量 . 比如 isset(123) 则报错(Fatal error).
empty函数比较有意思 如下代码
var_dump(empty($null_var));
var_dump(empty(0));
var_dump(empty(''));
var_dump(empty(false));
var_dump(empty(null));
var_dump(empty('0'));
var_dump(empty(array()));
以上选部为true
特点,
未定义变量 0 '0' '' false null 空数组 都是true,而且,不必须是变量.