配列キーでの「整数」と「数字文字列」の比較
どうでもいいことだけど、配列のキーが「整数」の場合と「数字文字列」の場合との比較が気になった。
$key_is_int = array(1, 2, 3, 4, 5); $key_is_str = array('0' => 1, '1' => 2, '2' => 3, '3' => 4, '4' => 5); // TRUE var_dump($key_is_int === $key_is_str); // TRUE var_dump(isset($key_is_int['0'])); // TRUE var_dump(isset($key_is_str[0])); // 1 / 2 / 3 / 4 / 5 for ($i = 0, $n = count($key_is_str); $i < $n; ++$i) { echo "{$key_is_str[$i]}\n"; }
予想どおりだったけど、「$key_is_int === $key_is_str」くらいは偽になってほしかったかも。