小编典典

为什么要同时检查isset()和!empty()

php

有没有之间的差异isset!empty。如果我进行双重布尔检查,这种方法是正确的还是多余的?有没有更短的方法来做同样的事情?

isset($vars[1]) AND !empty($vars[1])

阅读 362

收藏
2020-05-26

共1个答案

小编典典

这是完全多余的。empty或多或少简写!isset($foo) || !$foo,并且!empty是类似于isset($foo) && $foo。即empty做相反的事情,isset再加上一个额外的检查值的 真实性

换句话说,empty与相同!$foo,但是如果变量不存在,则不会发出警告。这就是该函数的重点:进行布尔比较,而不必担心设置变量。

手册说得像这样:

empty()与的相反(boolean) var只是未设置变量时不生成警告。

您可以!empty($vars[1])在这里简单地使用。

2020-05-26