PHP 連想配列にKeyを追加 ITかあさん

ITかあさん

PHP 連想配列にKeyを追加

連想配列にkeyを追加

こういう連想配列があったとして

Array
(
    [0] => Array
        (
            [User] => Array
                (
                    [id] => 1
                    [name] => 太郎
                )

            [Login] => Array
                (
                    [id] => 1
                    [login] => xxx
		    [password] => password
                )

        )

    [1] => Array
        (
            [User] => Array
                (
                    [id] => 2
                    [name] => 良夫
                )

            [Login] => Array
                (
                    [id] => 2
                    [login] => vvv
		    [password] => password
                )

        )

    [2] => Array
        (
            [User] => Array
                (
                    [id] => 3
                    [name] => 恵太
                )

            [Login] => Array
                (
                    [id] => 3
                    [login] => yyy
                    [password] => password
                )

        )

[3]は夫の名前です。(どうでもいい)
[User] に対して何か[kana]というkeyを追加したいとする。

array_pushを使ってもいけるんですが、

$hoge[0]['User']['kana'] = 'タロウ';
$hoge[1]['User']['kana'] = 'ヨシオ';
$hoge[2]['User']['kana'] = 'ケイタ';

foreachを使って動的にkeyを追加する

foreach($hoge as $key =>$hogehoge){
$hoge[$key]['User']['kana'] = 'カナ';
}

これがどう~~しても分からなくて何時間も悩んだのですが、$hogehogeには代入せずに$hogeに代入すればいいってことで。
要は$hogehogeは●●回目のループのデータが入っているわけで、全てのループに対しては$hoge。
メモメモ。

初夏のJavaScript祭 in サーキュレーションビル ForPro