配列の添え字について
<?php $a = array( true => 'boolean', 1 => 'integer', '1' => 'string', 1.0 => 'float', ); echo $a[true]; //=> float echo $a[1]; //=> float echo $a['1']; //=> float echo $a[1.0]; //=> float $a = array( true => 'boolean', 1 => 'integer', '1' => 'string', // 1.0 => 'float', ); echo $a[true]; //=> string echo $a[1]; //=> string echo $a['1']; //=> string echo $a[1.0]; //=> string $a = array( true => 'boolean', 1 => 'integer', // '1' => 'string', // 1.0 => 'float', ); echo $a[true]; //=> integer echo $a[1]; //=> integer echo $a['1']; //=> integer echo $a[1.0]; //=> integer $a = array( true => 'boolean', // 1 => 'integer', // '1' => 'string', // 1.0 => 'float', ); echo $a[true]; //=> boolean echo $a[1]; //=> boolean echo $a['1']; //=> boolean echo $a[1.0]; //=> boolean
普段困るような使い方ってのはぱっと思いつかないなぁ。
<?php foreach (array_keys($a) as $key) var_dump($key);
みたいな事をするとどの場合でもint(1)となるので、当然の動作というわけみたいですね。