哪个更好?我应该使用空()PHP函数
if (!empty($val)) { // do something }
和
if ($val) { // do something }
当我在PHP 5测试它,所有的情况下产生同样的结果。那么PHP 4怎么样,或者有什么想法哪种方式更好?
哪个更好?我应该使用空()PHP函数
if (!empty($val)) { // do something }
和
if ($val) { // do something }
当我在PHP 5测试它,所有的情况下产生同样的结果。那么PHP 4怎么样,或者有什么想法哪种方式更好?
当您不确定变量是否存在时,您应该使用empty()
结构。如果该变量预计将被设置,请改为使用if ($var)
。
empty()
相当于!isset($var) || $var == false
。如果变量是它returns真:
""
(空字符串)0
(0作为整数)0.0
(0为float)"0"
(0作为字符串)NULL
FALSE
array()
(空数组)var $var;
(变量声明,但没有在一个类中的值)真的吗?我不认为它是这样工作的。在运行empty()之前,我总是必须运行isset()。但我只是试了一下,它似乎在PHP 5.3中工作得很好。那么你每天都会学到新的东西。谢谢! – pthurmond
阅读manual:
空()是(布尔值)变种的相对,除了未设置变量时生成的警告是 。
http://php.net/manual/en/types.comparisons.php – Mike