Beginner.83
Новичок
Задача следующая есть многомерный массив:
необходимо написать функцию которая переопределяет по ключу данные массива
скажем set('elem_1.elem_2.elem_3', 'новое значение') и выводит массив с новыми значениями.
Всё бы отлично но смущает NOTICE. Не могу понять на каком этапе в цикле ошибка.
PHP:
$data = array(
'elem_1' => array(
'elem_2' => array(
'elem_3' = 'string'
)
)
);
скажем set('elem_1.elem_2.elem_3', 'новое значение') и выводит массив с новыми значениями.
PHP:
function set($name, $value)
{
$names = explode('.', $name);
$count = count($names)-1;
$data = self::$instance->data;
$result = array();
foreach ($names as $key=>$val){
if (!isset($data[$val])) return false;
if($key == $count) {
$data[$val] = $value;
} else {
$data = $data[$val];
}
$result[$val] = $data[$val];
}
return $result;
}