<?php
$data = array('element1' => array('subelement1'=>'value','subelement2'=>array('sub21'=>'hello')),
'element2'=>array('something'=>'this','subelement1'=>'awesome','subelement2'=>array('sub21'=>'world')));
function deepReplace($searchPath, $newValue, &$array) {
if (count($searchPath) == 0) {
$array = $newValue;
}
$lookFor = array_shift($searchPath);
if (is_array($array) && array_key_exists($lookFor, $array)) {
deepReplace($searchPath, $newValue, $array[$lookFor]);
}
}
print_r($data);
deepReplace(array(null, "subelement1"), "newValue", $data);
print_r($data);
preferences:
74.04 ms | 402 KiB | 5 Q