gpt4 book ai didi

php - is_null($var) 和 ($var === null) 有什么区别?

转载 作者:IT老高 更新时间:2023-10-28 11:54:53 25 4
gpt4 key购买 nike

这有什么区别吗……

if (is_null($var)) {
do_something();
}

还有这个?

if ($var === null) {
do_something();
}

在检查变量是否包含空值时,哪种形式更好?有没有我应该注意的边缘情况? (我初始化了所有变量,所以不存在的变量不是问题。)

最佳答案

true

false

        |  isset   | is_null | === null | == null | empty   |
|-------|----------|---------|----------|---------|---------|
| unset | ❌ | ✅ | ✅ | ✅ | ✅ |
| null | ❌ | ✅ | ✅ | ✅ | ✅ |
| true | ✅ | ❌ | ❌ | ❌ | ❌ |
| false | ✅ | ❌ | ❌ | ✅ | ✅ |
| 0 | ✅ | ❌ | ❌ | ✅ | ✅ |
| 1 | ✅ | ❌ | ❌ | ❌ | ❌ |
| \0 | ✅ | ❌ | ❌ | ❌ | ❌ |
| "" | ✅ | ❌ | ❌ | ✅ | ✅ |
| [] | ✅ | ❌ | ❌ | ✅ | ✅ |

总结:🔸♦️🔸

  • empty 等价于 == null
  • is_null 等价于 === null
  • issetis_null=== null
  • 的逆

重要的一点是 emptyisset 如果它们的参数是 undefined variable ,则不会触发 PHP 警告。因此,如果您希望始终定义您正在测试的变量或数组索引,请使用运算符,否则使用该函数。

关于php - is_null($var) 和 ($var === null) 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4662588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com