Примечание: я не знаком с терминологией, касающейся древовидных структур.Прошу прощения за любые упущения, которые могут быть результатом моего невежества!
Практический пример
Имеется такой массив:
Array
(
[0] => 0
[1] => 2
[2] => 8
[3] => 9
)
Узел дерева с ключом "9"будет найден в $tree[2][8][9]
(с корнем 0).Учитывая вышеупомянутый массив, как мне построить оператор в PHP, который будет обращаться к конечному узлу?
Целевой код
/*
Let's say I am given a $leafNodeID of 9, and I'd like to save some
data ($dataToSave) into said leaf node
*/
$leafNodeID = 9;
$dataToSave = array("name" => "foobar");
$tree_path = $this->findPathToRootNode($tree, $leafNodeID); // This returns the array found above.
${?????} = $dataToSave; // <-- Here be dragons
Заранее спасибо!
Редактировать : Для тех, кому интересно, моя функция findPathToRootNode
просто рекурсивно находит родительский узел и сохраняет его в формате массива, найденном выше.Если есть лучший способ представления указанных данных (особенно если это решит мою проблему), это было бы еще лучше.
Редактировать : при чтении кажется, что этот вопрос меньшедеревья, а точнее как получить доступ к массиву, учитывая его структуру в отдельном массиве.Пометка как таковая.