私の質問はかなり基本的なようですが、私はそれを回避することはできません。多次元配列の2番目の値を別の配列に置き換えようとしますが、それは私のforeachループで緩んでいます。すべてが単なる例です。見逃しのような失敗はここで起こります。元はクラス内の関数です。ありがとう!多次元配列の配列値を置き換える - 基本Q
これは、設定の配列がどのように見えるかです:
$config_arr = array(
'foo_a' => array('foo_a_singular', 'foo_a_plural', array('assign_me_aa', 'assign_me_ab'));
'foo_b' => array('foo_b_singular', 'foo_b_plural', 'assign_me_b')
);
この処理が起こるか:
function process_foo($config_arr) {
foreach ($config_arr as $config_data) {
$replacement_data = array('bar_me', 'bar_her', 'bar_some');
$config_data[1] = $replacement_data;
var_dump($config_data);
}
print_r($config_arr);
}
var_dump
は、私は/がデータを追加、置換ことを私に示しているが、print_r
は私に語りました何も起こらない。
'private $ names;パブリック関数__construct($ config_arr){$ this-> names = $ config_arr; } 'は私のクラスの始まりによく似ているので、そこに保存されています。私はそれから1つのfnを通って走ったときに、もう一度$ config_arrを書き直します。私も 'private $ counter;を試した。 (__construct :) $ this-> counter = count($ config_arr); 'これをループスルーします。それは楽しいです:違いはありません... – kaiser