массив из рекурсии

stanlee

Новичок
массив из рекурсии

вывожу дерево через рекурсию и весь вывод патаюсь запихнуть в массив типа




[0] => Array
(
[menu_id] => 1
[parent_id] => 0
[menu_name] => Имя
[priority] => 0
)
....


PHP:
function menu($parent=0) {
	$sel = "SELECT * FROM menu WHERE parent_id = '".$parent."'  ORDER BY priority";
	$res = query(__FILE__, __LINE__, $sel);

	while($arr = mysql_fetch_assoc($res)){
		$menu[] = $arr;
		menu($arr["menu_id"]);
	}

	return $menu;
}
но чет не получается :(
 

SelenIT

IT-лунатик :)
stanlee

1) Выполнять кучу маленьких запросов по одному в рекурсивной ф-ции - вопиюще неэффективно. Лучше одним запросом выбрать все дерево в массив, а потом этот массив перестраивать как угодно.
2) Что за странная ф-ция query() и где она определена?
3) Куча дельной информации по теме с примерами и ссылками: http://phpclub.ru/faq/wakka.php?wakka=Tree/Al&v=fky.
 

SiMM

Новичок
> $res = query(__FILE__, __LINE__, $sel);
Ужас какой. Вообще-то в природе давно существует такая вещь, как [m]debug_backtrace[/m]

-~{}~ 14.08.05 10:10:

А по теме - [m]language.variables.scope[/m]
 
Сверху