PHP is_null()和== null
在PHP中,PHP中的is_null
和==null
什么区别? 双方都有什么资格certificate是正确的?
is_null
与=== null
相同。 当variables为null
(或未设置)时,两者都返回true。
请注意,我正在使用===
而不是==
。 ===
比较types和值。
所以你可以更好地理解它:
$a = null; $b = 0; is_null($a) // TRUE $a == null // TRUE $a === null // TRUE is_null($b) // FALSE $b == null // TRUE $b === null // FALSE
在php.net网站上有几个非常好的图表,显示了不同的值如何反应:
types比较 – php.net
你可以检查is_null()和null === $ var之间的比较
两者之间好比较
===null
是PHP的发明者Rasmus Lerdorf推荐的。 Rasmus说,null的testing比isset
的testing更快。 他的build议是足够的理由来认真看待差异。 如果在一个Web页面请求中有几千次的小循环遍历相同的代码,那么这个区别将是非常重要的。
==
不会检查types,所以不pipe怎样,某处,像string''
或string'null'
可能会出现等于空。
使用三重等号===
,不仅检查两个值是否相等,而且它们是相同的types。