Php ==和===之间的区别是什么?

Php ==和===之间的区别是什么?,php,Php,我正在学习cakephp,我看到了很多条件,如: if( x === y){ } 我已经找过了,但什么也没找到。=会自动进行类型转换,==不会 这意味着: 0==“0”的计算结果为TRUE,因为在内部比较字符串和数字时,使用==时字符串会转换为数字 0==“0”的计算结果为FALSE,没有进行类型转换,整数0不等于字符串 和中的详细信息。=将执行自动类型转换,==将不会执行此操作 这意味着: 0==“0”的计算结果为TRUE,因为在内部比较字符串和数字时,使用==时字符串会转换为数字 0==“

我正在学习cakephp,我看到了很多条件,如:

if( x === y){
}

我已经找过了,但什么也没找到。

=
会自动进行类型转换,
==
不会

这意味着:

0==“0”
的计算结果为
TRUE
,因为在内部比较字符串和数字时,使用
==
时字符串会转换为数字

0==“0”
的计算结果为
FALSE
,没有进行类型转换,整数
0
不等于字符串


和中的详细信息。

=
将执行自动类型转换,
==
将不会执行此操作

这意味着:

0==“0”
的计算结果为
TRUE
,因为在内部比较字符串和数字时,使用
==
时字符串会转换为数字

0==“0”
的计算结果为
FALSE
,没有进行类型转换,整数
0
不等于字符串


和中的更多信息。

=
比较两个变量的值。如果它们属于不同的类型,则会将它们转换为通用类型,然后进行比较

另一方面,
=
则更为严格。它要求双方也是同一类型的

php> = 5 == "5"
true
php> = 5 === "5"
false

=
比较两个变量的值。如果它们属于不同的类型,则会将它们转换为通用类型,然后进行比较

另一方面,
=
则更为严格。它要求双方也是同一类型的

php> = 5 == "5"
true
php> = 5 === "5"
false
同样,0==“something”的计算结果为true。这就是为什么在处理字符串或在可以使用字符串的地方不使用严格比较的糟糕编码的原因。有关详细信息,请参见此处。规则应该“尽可能严格”。0==“something”的计算结果也应为true。这就是为什么在处理字符串或在可以使用字符串的地方不使用严格比较的糟糕编码的原因。有关详细信息,请参见此处。规则应该“尽可能严格”。