PHP: if (!$val) VS if (empty($val))。有什么区别吗?

2022-08-30 17:37:31

我想知道下面的两种情况有什么区别,建议哪种情况?

$val = 0;

if (!$val) {
  //True
}

if (empty($val) {
  //It's also True
}

答案 1

看看 PHP 类型比较表

如果检查该表,您会注意到,对于所有情况,都与 相同。因此,它归结为处理未初始化的变量。 创建 一个 ,而 不创建 。empty($x)!$x!$xE_NOTICEempty($x)


答案 2

如果使用空,并且变量从未设置/创建,则不会引发警告/错误。


推荐