1

重複の可能性:
PHP で (0 == 'Hello') が true を返すのはなぜですか?

<?php
echo ('names' == 0) ? 1 :0;
?>

TRUE と評価されます

等号を追加すると機能しますが、これは直感に反します。

<?php
echo ('names' === 0) ? 1 :0;
?>

FALSE と評価される

<?php
echo ('names' == FALSE) ? 1 :0;
?>

FALSE と評価される

これも見つけました: Why does 1234 == '1234 test' evaluate to true?

4

1 に答える 1

3

その理由は、文字列 'names' の数値は 0 ですが、ブール値は 0 であるためですtrue(私の知る限り、'0' ではない空でない文字列trueは PHP と同等です)。

于 2013-01-21T11:57:33.727 に答える