在php使用中,我们有时会混淆=、==、==和!=、!==的用法,下面就这几种用法和区别,做简要描述;
1、=、==和===
1)=:赋值,在逻辑运算时也有效;
2)==:等于运算,但是不比较值的类型;
3)===:完全等于运算,不仅比较值,而且还比较值的类型,只有两者一致才为真。
例:1)就不做多说,赋值 a=1;
2)在C/C++中0 和 false是相等的,但是在php并不完全相等。0 == false;
1 == true;
'sdff' == true;
3)但是当用3个等号时,以下都为假0 === false;
1 === true;
'sdff' === true;
2、!=和!==
1) != : 不等于
2)!== : 非恒等。就是不完全等于
例:1)0 != false; 假
1 != '1' 假 因为!=会进行类型转化,转换为相同类型时,再比较,
2)0 !== false; 真 !==则更加严格,不进行类型转换, 如果类型不相同的话,直接返回True
3 顺便在提下js下的情况
js中,==和===,!= 和!==的区别
1).==
仅当左右操作数相等时返回true,如果两个操作数不是同一类型时,js会尝试将其转化为合适的类型,然后进行比较
2). ===
当且仅当左右操作数类型相等,且值相等时,才会返回true,当左右两个操作数不是同一类型时,js不会转换其类型
3).!= 和!==
!= 与== 同理,!==与===同理