Oddwit


PHPでは配列のキーにbooleanが使える(使いたくないけど)

Posted in PHP, Whatnot by マルコ on the May 25th, 2007

PHPの配列は、そのままハッシュテーブル(連想配列)として使える。

ふと疑問に思って試してみたところ、true/falseとnullがキーとして使えてしまった。

<?php
$array = array();

$array[true]  = 'Keyed as TRUE';
$array[false] = 'Keyed as FALSE';
$array[null]  = 'Keyed as NULL';
$array[0]     = 'Keyed as 0';

echo $array[true];    // Keyed as TRUE
echo $array[false];   // Keyed as FALSE
echo $array[null];    // Keyed as NULL
echo $array[0];	      // Keyed as 0
?>

なんじゃこりゃ。

ちなみにキー “” は キー null と同義で、キーにオブジェクトや配列を入れようとするとWarning: Invalid offsetと怒られた。

Leave a Reply