在php中,"=="和"==="有什么区别?

16

在PHP中,=====有什么区别吗? 当我在条件语句中使用它们时,两者似乎都可以正常工作。

2个回答

22
  • $a == $b

等于 true: 如果在类型转换后,$a 等于 $b


  • $a === $b

全等 true: 如果 $a 等于 $b 并且它们的类型相同


你对“同类型”是什么意思?如果$a == $b为真,则它们肯定是相同类型的。不是吗?你能给我一个例子,让它们在==(真)但===(假)吗? - Shafizadeh
@Sajad 这里http://www.php.net/manual/en/language.operators.comparison.php有很多例子。 - evilone
@Shafizadeh 在这篇文章中 http://www.7codes.info/post/4/difference-between-==-and-=== 解释了 "==" 和 "===" 的区别。例如 "22" 是字符串类型,而 22 是整数类型。它们不是相同的类型,因为一个是字符串,另一个是整数。使用==判断它们相等,但是使用===则不相等。 - user2360831

8

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接