嘿,如果你有以下代码,并想检查我发现的$key匹配Hello,那么true如果变量是,则总是返回比较0.我遇到了一个特殊键的数组,并想知道为什么它没有按预期工作.请参阅此代码以获取示例.
$key = 1;
if ($key != 'Hello') echo 'Hello'; //echoes hello
$key = 2;
if ($key != 'Hello') echo 'Hello'; //echoes hello
$key = 0;
if ($key != 'Hello') echo '0Hello'; //doesnt echo hello. why?
if ($key !== 'Hello') echo 'Hello'; //echoes hello
Run Code Online (Sandbox Code Playgroud)
有谁能解释一下?
Zoo*_*Way 49
操作员==并!=没有比较类型.因此PHP自动将'Hello'转换为0(intval('Hello'))的整数.如果不确定类型,请使用类型比较运算符===和!==.或者更好地确定您在程序中的任何位置处理哪种类型.
| 归档时间: |
|
| 查看次数: |
3414 次 |
| 最近记录: |