您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在PHP中不等于!=和!==

在PHP中不等于!=和!==

==并且!=不考虑您比较的变量的数据类型。因此,这些都将返回true:

'0'   == 0
false == 0
NULL  == false

===并且!== 考虑到数据类型。这意味着将字符串与布尔值进行比较 是正确的,因为例如它们的类型不同。这些都将返回false:

'0'   === 0
false === 0
NULL  === false

您应该比较函数的数据类型,这些函数返回的值可能是含糊的真实/错误值。一个著名的例子是strpos()

// This returns 0 because F exists as the first character, but as my above example,
// 0 Could mean false, so using == or != would return an incorrect result
var_dump(strpos('Foo', 'F') != false);  // bool(false)
var_dump(strpos('Foo', 'F') !== false); // bool(true), it exists so false isn't returned
php 2022/1/1 18:23:35 有394人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶