今天团队项目有个bug比较隐蔽,测试的参数的结果不同,后来断点发现是"=="惹出的问题。 对于php新手,很多时候"=="会莫名失效,造成判断错误,这里做一个"=="与"==="的总结。 1、"==" 是一个操作符,比较两个变量的值,不比较数据类型。

2、"===" 比较两个变量的值和类型。判断更加严格。

example01:

$a = '123'; $b = 123; var_dump($a === $b); //false; var_dump($a == $b); //true

example02:

var_dump(0 == 1); // false var_dump(0 == (bool)'all'); // false var_dump(0 == 'all'); // TRUE, take care var_dump(0 === 'all'); // false