我正面臨一個奇怪的PHP問題。這個簡單的例子:
<?php
$array = array(
'zero',
'one',
'id' => 'two'
);
foreach ($array as $key => $value) {
if ($key == "id") {
echo "Key: ". $key .", value: ". $value ."\n";
}
}
?>
應(恕我直言)輸出這樣的:
Key: id, value: two
但它輸出
Key: 0, value: zero
Key: id, value: two
這怎麼可能:0 == "id"
?
你有沒有試過它與一個嚴格的比較(`===`)? – jprofitt 2011-12-13 20:24:13
它應該給你「鑰匙:0,價值:零......」雖然,是一個錯字呢? http://codepad.org/qGfe1jNC。 – 2011-12-13 20:25:26