Дерево в массив

goshaua

Новичок
Дерево в массив

Здравствуйте!

Нужно загнать дерево в массив. Функция для вывода дерева у меня такая.
PHP:
$result=mysql_query("SELECT id, id_parent, name FROM table", $db);
$arr_result = array();
while ($row = mysql_fetch_row($result)) {
$arr_result[] = array('id' => $row[0], 'id_parent' => $row[1], 'name' => $row[2]);
}


function ShowTree($ParentID) {  
global $arr_result;
	for($i=0; $i<=(count($arr_result)-1); $i++){
		if($arr_result[$i]['id_parent'] == $ParentID){
			echo "<ul> \n <li>".$arr_result[$i]['name']."</li> \n ";
			ShowTree( $arr_result[$i]['id'] );
			echo "</ul> \n";
		}
	}	
}

ShowTree(0);
Помогите переделать ее для создания многомерного массива. Спасибо.
 

findnext

Новичок
PHP:
$result=mysql_query("SELECT id, id_parent, name FROM table", $db);
$arr_result = array();
while ($row = mysql_fetch_row($result)) {
$i++;
$arr_result[$i][] .= array('id' => $row[0], 'id_parent' => $row[1], 'name' => $row[2]);
}
!!!:D
 

brook73

Новичок
Почитайте про Nested Sets , алгоримтов готовых включая на php, много
 

brook73

Новичок
Автор оригинала: predator
у человека adjacency list, причём тут ns?
Притом что это другая форма работы с деревом категорий, возможно ему будет более понятно чем с текущей.
 
Сверху