首页 > 代码库 > PHP运算符===和==的区别 小细节

PHP运算符===和==的区别 小细节

区别:

===是恒等计算符   同时检查表达式的值与类型

==是比较运算符号  不会检查条件式的表达式的类型

举例

if (strstr($new_url,‘http://‘) === false) {}//

NULL,FALSE,array(),"",0,"0"这几个值如果用==他们是相等的,

判断出某个值真正的返回值呢,就可以用 ===$a = 0;(数值)$b = FALSE;(布尔)$a === FALSE (类型不一样)不成立

$b === FALSE(类型一样)成立

 

由于==不会检查条件式的表达式类型

所以

0即是数值0,也是布尔FALSE,==不强制类型一致性,故以下:

$a == FALSE 和 $b == FALSE都成立===的用途

PHP某些内置函数成功会返回数值还有" "、0之类的空值,失败会返回false,

用==符号无法判断,而用===就可以判断出来,它区分了返回值的值及类型。

PHP运算符===和==的区别 小细节