PHP运算符===和==的区别

php | 2019-10-08 15:08:09

1.区别:

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

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

2.举例

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,

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

登录后即可回复 登录 | 注册
    
关注编程学问公众号