【发布时间】:2018-08-22 17:15:10
【问题描述】:
我对等于运算符(==.===)有很大的困惑,下面我提到了 php 代码,其中检查字符串“all”等于数字 0 的条件。但它返回 true 等于 ("all"==0) ,但不与其他人一起:
<?php
var_dump("all"==0);
var_dump("all"=="0");
var_dump("all"==="0");
var_dump("all"===0);
?>
输出:
bool(true)
bool(false)
bool(false)
bool(false)
对于所有情况,答案都应该是错误的。但为什么 "all"==0 是真的。谁能解释一下?
【问题讨论】:
-
当 0 存在时,它是数字,当 0 在 "(双引号) 中时,它定义为字符串。
-
请在标记重复之前在问题下方。并在标记重复之前给出正确的解决方案和参考。