假设我有一个数组的keyseg $array_keys = ['a','b','c'];
我想从$array_keyseg中按值更新$array。$array[$array_keys[0]][$array_keys[1]][$array_keys[0]] = "new text";
问题是$array_keys的长度可以改变。有什么方法可以让我通过循环键或过滤数组得到同样的结果吗?
如果我对这个问题理解正确的话。这是你的解决方案。
$array_keys = ['a','b','c'];
$array = ['a' => 1, 'b' => 2, 'd' => 3];
function updateArrayByKyes(&$array, $array_keys, $new_value) {
foreach ($array_keys as $key) {
if (isset($array[$key])) {
$array[$key] = $new_value;
}
}
}
updateArrayByKyes($array, $array_keys, 10);