可能重复:
PHP 将两个不同的字符串表示为相同
我很难理解是什么导致了 switch case 指令中这种奇怪的行为。
代码是这样的:
<?php
$myKey = "0E9";
switch ($myKey) {
case "0E2":
echo "The F Word";
break;
case "0E9":
echo "This is the G";
break;
default:
echo "Nothing here";
break;
}
?>
该指令的结果应该是This is the G
好吧,不是这样。总是返回F 字
如果我们把左边的0E9指令反转为开头并尝试找到值0E2
<?php
$myKey = "0E2";
switch ($myKey) {
case "0E9":
echo "The G String";
break;
case "0E2":
echo "The F Word";
break;
default:
echo "Nothing here";
break;
}
?>
现在总是返回This is the G
0E2和0E9值不解释为文本?那些Values被保留?
有人可以解释这种行为吗?