PHP为空或空?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (64)

我有一个关于PHP的NULL,请参阅以下代码:

  $a = '';
  if($a == NULL) {
      echo 'is null';
  }

为什么我看到是空的?如果$a是空的,是一个错误?谢谢。

提问于
用户回答回答于
if($variable === NULL) {...}

PHP将NULLfalse0字符串视为相等。

用户回答回答于

如下表所示,empty($foo)相当于$foo==nullis_null($foo)具有相同的功能$foo===null。该表还显示了一些null比较棘手的值。(φ表示未初始化的变量。)

         empty    is_null 
         ==null  ===null  isset   array_key_exists
      ϕ |   T   |   T   |   F   |   F   
   null |   T   |   T   |   F   |   T   
     "" |   T   |   F   |   T   |   T   
     [] |   T   |   F   |   T   |   T
      0 |   T   |   F   |   T   |   T      
  false |   T   |   F   |   T   |   T   
   true |   F   |   F   |   T   |   T   
      1 |   F   |   F   |   T   |   T   
     \0 |   F   |   F   |   T   |   T   

扫码关注云+社区

领取腾讯云代金券