[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: рекурсия
yintar
Всем привет!!!
Мне надо реализовать вывод категорий и вложенных подкатегорий.Задача вроде стандартная и я знаю что решается она с помощью рекурсии,вроде бы так и делаю.
Вот моя функция:

public function saveDataAsHtml($data) {

if (is_array($this->data)) {
foreach ($this->data as $value) {
echo $value['text'];
if (!empty($value['children'])) {
$this->saveDataAsHtml($value['children']);
}
}
}
}


массив $data имеет следующую структуру

Array
(
[0] => Array
(
[text] => Компьютеры
[parent_id] => 0
[line] => 1
[expanded] =>
[category_id] => 43
[children] => Array
(
[0] => Array
(
[text] => Планшеты
[parent_id] => 43
[line] => 2
[expanded] =>
[category_id] => 49
[children] => Array
(
)

)

[1] => Array
(
[text] => Ноутбуки
[parent_id] => 43
[line] => 2
[expanded] =>
[category_id] => 50
[children] => Array
(
)

)

)

)

[1] => Array
(
[text] => Автомобили
[parent_id] => 0
[line] => 1
[expanded] =>
[category_id] => 44
[children] => Array
(
[0] => Array
(
[text] => Ауди
[parent_id] => 44
[line] => 2
[expanded] =>
[category_id] => 51
[children] => Array
(
)

)

[1] => Array
(
[text] => Шевроле
[parent_id] => 44
[line] => 2
[expanded] =>
[category_id] => 52
[children] => Array
(
)

)

[2] => Array
(
[text] => БМВ
[parent_id] => 44
[line] => 2
[expanded] =>
[category_id] => 53
[children] => Array
(
)

)

)

)

[2] => Array
(
[text] => Бытовая техника
[parent_id] => 0
[line] => 1
[expanded] =>
[category_id] => 45
[children] => Array
(
[0] => Array
(
[text] => Пылесосы
[parent_id] => 45
[line] => 2
[expanded] =>
[category_id] => 47
[children] => Array
(
)

)

[1] => Array
(
[text] => Стиральные машины
[parent_id] => 45
[line] => 2
[expanded] =>
[category_id] => 48
[children] => Array
(
[0] => Array
(
[text] => hjh
[parent_id] => 48
[line] => 3
[expanded] =>
[category_id] => 54
[children] => Array
(
)

)

)

)

)

)

[3] => Array
(
[text] => Строительные материалы
[parent_id] => 0
[line] => 1
[expanded] =>
[category_id] => 46
[children] => Array
(
)

)
)

но выдается ошибка
 Fatal error: Maximum function nesting level of '100' reached, aborting! in 


Помогите пожалуйста разобраться как сделать правильно.


Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.