if(!$variable)
和 if(isset($variable))
之间的区别是什么?if(!$variable)
和 if(isset($variable))
之间的区别是什么?答案非常简单。 isset($var)
返回变量是否存在且不为 null,而!$var
判断该变量是否为true
或任何评估结果为true
(如非空字符串)。这在此文档页面的第一个表格中进行了总结。
另外,使用!$var
会输出一个警告,表示您正在使用未定义的变量,而isset($var)
不会提示警告。
请注意,它们是两个不同的东西:
<?php
var_dump( isset($foo) ); // false.
var_dump( !$foo ); // true, but with a warning.
$foo = false;
var_dump( isset($foo) ); // true
var_dump( !$foo ); // true.
它们是两个不同的语句