PHP将字符串“cash”解释为零

时间:2012-03-20 15:24:57

标签: php

这很疯狂。我在写作的应用程序中遇到了这个问题。以下代码将回显“是”:

<?php
$var = 0;
if ($var == 'cash') echo 'YES';
else echo 'WEIRD';
?>

WHY ???如何将零解释为等于'现金'???

2 个答案:

答案 0 :(得分:5)

比较数字和字符串时,字符串将转换为数字。将字符串'cash'转换为数字时,结果为零。您可以使用严格比较(===),因此您不仅要比较值,还要比较类型,并且不会涉及type casting

答案 1 :(得分:0)

您正在尝试将整数与字符串进行比较。

我会使用===运算符进行严格比较