==和===在php中的用法[重复]
Posted
技术标签:
【中文标题】==和===在php中的用法[重复]【英文标题】:The usage of == and === in php [duplicate] 【发布时间】:2012-09-16 20:05:37 【问题描述】:可能重复:What does “===” mean?
我对在 php 中使用这些运算符感到困惑,我不太确定何时应该使用 === 以及何时使用 ==。
例如为什么/何时应该写:
if( $some_method_that_returns_something_or_false() === FALSE)
//do stuff
以及何时使用 ==?
另外,=== 是否意味着我必须返回 bool FALSE 或者我可以返回 0?当使用 === 或 == 被认为是不好的做法时?
还有这样的东西:
if($some_method_that_returns_true_or_false())
是 $some_method_that_returns_true_or_false() == TRUE 还是 some_method_that_returns_true_or_false() === TRUE?
【问题讨论】:
这里这个问题肯定有1000个骗子。尝试使用右上角的搜索。 【参考方案1】:=== 表示精确值,因此对于 true 它必须为 true,而 == 检查值的含义,因此 true 也是 '1' 或任何字符串的值。
【讨论】:
我明白了,本质上是这样。如果我希望它是严格的 bool 而不是例如某些对象等,我使用 ===. 不是任何字符串;"0" != true
和 "" != true
【参考方案2】:
==
用于检查相等性,===
用于检查相等性和类型。
和
if($some_method_that_returns_true_or_false())
正在检查$some_method_that_returns_true_or_false() == TRUE
【讨论】:
以上是关于==和===在php中的用法[重复]的主要内容,如果未能解决你的问题,请参考以下文章
React Native useEffect 在异步函数中的用法[重复]