phpで ’文字列’ == 0 が 真になる件

php


if ( '文字列' == 0 ) {
echo '真';
}

とすると真になって
if分が評価されてしまいます
ビックリ

文字列が数値にキャストされて


intval('文字列'); //数値0になる
intval('123文字列'); //数値123になる

文字列が数値の0になり
予期しない結果となる

数値と文字列の比較では
数値が文字列にキャストされるものとばかり
思っていました