我正在试图弄清楚我会怎么做,基本上我希望函数添加到以下数组中:
$this->array['key1']['key2']['key3'] = 'value'
来自像$ this-> keys这样的单维数组:
Array
(
[0] => key1
[1] => key2
[2] => key3
)
我的功能是:
function addToArray($value) {
$this->array = ...
}
我有一些使用foreach $this->keys
的想法,但我不知道在向其添加新值时如何保留现有数组。
$ keys在单独的函数中维护
例如:
foreach ($this->keys as $key) {
$array = $this->array[$key]
}
$array = $value;
但这会创建一个新的单维数组,而不会添加到多维$ this->数组。也许我只是没有正确思考。
答案 0 :(得分:2)
尝试以下内容:
function addToArray($value){
$tempArray = &$this->array;
foreach($this->keys as $key){
$tempArray = &$tempArray[$key];
}
$tempArray = $value;
}