在PHP中要判别一个变量是否NULL有许多方式:

is_null 或 isset

这两个函数都能够来判别一个变量是否为NULL,它们对空字符串,0,false的认同是相同的。即is_null=! isset()。但是isset是语法结构,is_null是函数。在性能上,语法结构相对要优异一点。所以许多地方都推荐运用isset来替代is_null的运用。

== 或 ===

在有些情况下,推荐运用isset来判别一个变量是否为NULL。但是从语义上来说,一个变量”是否已显示初始化“和”是否为NULL“是不同的概念,在某些场景下运用isset是不合适的,比如查看一个函数的返回值是否为NULL。此时能够运用”==”和”===“来判别它们是否为NULL。

关于”==”和”===“,它们直接的差异很大

关于”==”,它认同空字符串,0,false都为NULL。而关于”===”,只有一个变量真的为NULL,它才代表NULL。别的”===”相关于”isset”来说,性能基本挨近,乃至要好点。

因而综上述,判别一个变量是否为NULL最好的方法便是直接运用”===”,这样就不用在is_null,isset之间犹豫。其实上述的结论也同理于False的判别。

发表评论

电子邮件地址不会被公开。 必填项已用*标注