PHPで配列に要素を追加する場合、array_push()を使えばいいので連想配列も同じでいいだろうと思って以下のようにコードを組んでみたところ、syntax errorで怒られてしまいました。。。(文法違反なので、当たり前ですよね。)
$hoge = array(); array_push($hoge,'hoge'=>'value');
この方法では追加できないようなので、別の方法を検討したところ、以下のようにすれば追加できました。
$hoge = array(); $hoge += array('hoge1'=>'value1'); $hoge += array('hoge2'=>'value2'); var_dump($hoge);
のように書くと、結果は次のようになります。
array(2) { [hoge1]=string(6) value1 [hoge2]= string(6) value2 }
調べてみたところ、PHPには配列演算というものがあり、+は結合を意味するものだそうです。
http://php.net/manual/ja/language.operators.array.php
さらに、arrayにarrayを追加する方法も分かりました。
$hoge[] = array('hoge1'=>'value1'); $hoge[] = array('hoge2'=>'value2'); var_dump($hoge);
このように書くと、以下のように多重配列として格納されます。
array(2) { [0]=array(1) { [hoge1]=string(6) value1 } [1]=array(1) { [hoge2]=string(6) value2 } }
Pingback: cakePHPでGoogle map APIを使った時にお世話になったサイトまとめ – ぐりーんぐりーん。