Задать значение в многомерном ассоциативном массиве PHP
Есть переменная $target_val = "some", в которую нужно присвоить элементу в многомерном массиве,
к примеру такой
$addresses = array('addresse'=>array('addr1'=>"",'addr2' =>""))
и есть массив из набора ключей, в котором "путь" к нужному элементу
$keys = ['addresse','addr1']
Как при помощи массива типа $keys присвоить нужному элементу значение $target_val, что бы в результате было $addresses = array('addresse'=>array('addr1'=>"some",'addr2' =>"")) ?
Ответы (2 шт):
Автор решения: teran
→ Ссылка
все подобные вопросы, коих тут множество, будут сводиться к использованию цикла и ссылки на элемент массива.
что-то вроде такого
$data = [...];
$keys = [...];
$item = &$data;
foreach($keys as $k){
$item = &$item[$k];
}
$item = "234";