揮発性のメモ2

http://d.hatena.ne.jp/iww/

配列の添え字の null

配列の添え字に null を使うと、空文字列になる。
で、空文字列と 0 とは別物。

<?

$a = array();

$a[-2] = "foo";
$a[null] = "hoge";
$a[""] = "piyo";   // ← $a[null] を上書きする
$a[] = "bar";      // ← 添え字の最大値+1(ただし最大値がマイナスの時は0)

print_r($a);
Array
(
    [-2] => foo
    [] => piyo
    [0] => bar
)

Null は空文字列にキャストされます。つまり、キーに null を指定すると、実際には "" として格納されます。

PHP: 配列 - Manual