本文摘自 PHP 最佳实践 - 检测值是否为 null 或 false。
PHP 的宽松类型系统提供了许多不同的方法来检查变量的值。然而这也产生了很多问题。使用 == 来检测值是 null 还是 false。如果该值实际上是空字符串或0,则会误报false。 isset 测试变量是否有值,而不是测试该值是否为 null 或 false,因此在这里使用它是不合适的。
is_null() 函数可以准确检测某个值是否为 null,is_bool 可以检测某个值是否为 布尔 值(例如 false),但还有更好的选择:=== 运算符。 === 测试两个值是否相同,这与 PHP 松散类型世界中的相等不同。它也比 is_null() 和 is_bool() 更快,而且有些人认为它比使用函数进行比较更干净。