【PHP】关于字符串和数值比较的问题

关于字符串和数值比较

前段时间面试碰到一个面试题。关于对字符串和数值比较的问题。很有意思。
$a = [0 => 1, "aa" => 5, 3, 4];
foreach ($a as $item => $value) {
    echo $item == "aa" ? 5 : $value;
}

1.执行结果:5534
2.问题分析:
第一次循环:echo 0 == “aa” 时会将"aa"转换成整数,转换会从第一个字符开始如果不是整数就转换成0.
3.同理,‘aa’ + 1时结果也为 1.
‘1aa’+1时结果为2。