**==:**两个等号是先把等号两边的变量转化成相同的类型,如果转换类型后的结果是相等的,就认为相等。
$str = “abc”;
if (0==$str)
{ echo “真”}
else
{ echo “假”}
结果为真
**==**执行过程:
1.执行 == 时要求运算符两边的数据类型必须一致,所以等号右边的字符串被强制转换为了整型0,返回了真。
分割线
**===:**三个等号是先判断两边变量的数据类型,如果数据类型相同,再去判断两边的值,如果值相等,那么为真。
$str = “abc”;
if (0===$str)
{ echo “真”}
else
{ echo “假”}
结果为假
**===**执行过程:
1.判断全等于操作符两边的数据类型是否相同 如果不相同,则返回false
2.判断全等于操作符两边的值是否相等,如果不相等,则返回false
总结:三个等号是包括变量值与类型完全相等,而两个等号只是比较两个数的值是否相等。