[PHP-users 22277]Re: 連想配列のキーの削除方法について

TETSU Takeno develop @ te2.net
2004年 6月 19日 (土) 01:05:12 JST


竹野です。
重松さん、いつも貴重な情報をありがとうございます。
※メインでMacを使っているので、多方面でいろいろ参考にさせていただいてい 
ます。

On Jun 18, 2004, at 9:31 PM, Osamu Shigematsu wrote:

>> $a[] = array($test, $test2, $test3); のようなケースのことを言っていま 
>>>> た。
>> この場合、$aは連想配列ではないですね。
>
> いえ、連想配列ですよ。
> PHP の配列は、連想配列だけです。
>
> $a[] = という文法は、$a の末尾に自動的に数値のキーをつけて、
> 要素として、配列を追加する、という処理です。
>
> PHP には、2 次元の配列もありません。
> 2 次元の配列に見えているのは、連想配列の入れ子です。
>
> この辺、多くの人がつまづくことなので、var_dump() などで、
> どのようにデータが保持されているのか、よく観察することをお勧めします。

上記アドバイスを参考にvar_dump()したところ、理解できました。
$a[]に要素を追加すると、数値のキーがついた連想配列になっていました。

$a[] = 'aaa';
$a[] = 'bbb';
var_dump($a);

【結果】
array(2) {
   [0]=>
   string(3) "aaa"
   [1]=>
   string(3) "bbb"
}

※僕の頭の中では、$a['aaa', 'bbb']のようになっていると思っていました。

> また、この辺りのことを、LL Magazine にちょっと書いておきました。
> お手元にありましたら、参照してみてください。

大変興味があります。
早速、Googleで探してみます。

I┃N┃S┃T┃A┃N┃C┃E┃
━┛━┛━┛━┛━┛━┛━┛━┛━━━━━━━
TETSU Takeno
tetsu @ instance.co.jp
───────────────────────
株式会社 インスタンス
竹野 哲
〒160-0017 東京都新宿区左門町6 米倉ビル403
TEL : 03-3351-3088 FAX : 03-3351-5839
───────────────────────



PHP-users メーリングリストの案内