function insert_using_keys($arr, $keys, $value){
// we're modifying a copy of $arr, but here
// we obtain a reference to it. we move the
// reference in order to set the values.
$a = &$arr;
while( count($keys) > 0 ){
// get next first key
$k = array_shift($keys);
// if $a isn't an array already, make it one
if(!is_array($a)){
$a = array();
}
// move the reference deeper
$a = &$a[$k];
}
$a = $value;
// return a copy of $arr with the value set
return $arr;
}
5条答案
按热度按时间wmtdaxz31#
这是一种非平凡的东西,因为你想要嵌套,但它应该像这样:
lbsnaicq2#
这是在做什么:
$ref
跟踪对$arr
的当前维的引用。$keys
,引用当前基准电压源的$key
元素。jdgnovmf3#
你需要先确认键的存在,然后赋值。类似下面的代码应该可以工作(未测试):
omqzjyyz4#
很老套,但是:
1u4esq0p5#
这会给予u数组中的值。