php中的==和===运算符有什么不同?
==称之为比较运算符,它在比较之前会将两个值尝试转换为相同的数据类型,然后去比较值;通常以第一个值的数据类型为为依据去变换数据类型
===称之为全等比较运算符,该操作符会检查两个值的数据类型,只有数据类型和值都相同时才返回true
这里顺便复习一下strpost,strpos在找不到目标字符串时候将返回false,那么来看看下面两个例子:
“==”比较运算符中使用
<?php $str = 'Stack How To'; $needle = 'Stack'; if (strpos($str, $needle) == false) { echo('Not found!'); } else { echo('Found'); } ?> 这将会发生错误,这个极端例子中的strpos($str, $needle)将返回0,在这里0==false,将返回true输出Not found "==="全等比较运算符中使用
<?php $str = 'Stack How To'; $needle = 'Stack'; if (strpos($str, $needle) === false) { echo('Not found!'); } else { echo('Found'); } ?> 这是正确的方法,0===false将返回false
快捷登陆