かなり基本的な質問がありますが、行き詰まっています。私はphpにかなり慣れていないので、次のような配列を持っています:
$array = array(
'one' => 1,
'two' => array('key1' => 'val1','key2' => 'val2'),
'three' => array('key1' => 'val1','key2' => 'val2'),
'four' => array('key1' => 'val1','key2' => 'val2')
);
配列内の各配列 (つまり、'two、'three'、'four') について、'key3' => 'val3' をそれらの配列に挿入します。
私はこれを試しました:
foreach($array as $item) {
if (gettype($item) == "array") {
$item['key3'] = 'val3';
}
}
しかし、それは機能しません。その理由はわかりません。あちこちでさまざまな print_r を使用すると、ループで出力すると $item に 'key3' => 'val3' が挿入されるように見えますが、元の配列は変更されていないようです。通常の for ループも試しましたが、うまくいきませんでした。