Добрый вечер!
Как должно выглядеть:
→→Фильтры (категория)
→→→→Воздушные (субкатегория)
→→Продукты Адика (категория)
Как он выводит список:
Разметка списка:
Как видите, последняя категория появилась с классом "catItem_sub", а по задумке это должен был быть класс catItem, поскольку это не подкатегория.
Функция вывода списка категории:
function viewSelect($tree, $class){
foreach ($tree as $cat){
echo '<div class="'. $class .'" data-id="' . $cat['id'] . '">' . $cat['category_name'] . '</div>';
if($cat['childs']){
$class .= '_sub';
$this->viewSelect($cat['childs'], $class);
}
}
unset($cat);
}
Для того чтобы больше поняли структуру приложу var_dump от выводимого списка:
array(2) {
[0]=>
array(4) {
["id"]=>
string(1) "7"
["category_name"]=>
string(14) "Фильтры"
["parent_id"]=>
string(1) "0"
["childs"]=>
array(1) {
[0]=>
array(3) {
["id"]=>
string(1) "8"
["category_name"]=>
string(18) "Воздушные"
["parent_id"]=>
string(1) "7"
}
}
}
[1]=>
array(3) {
["id"]=>
string(1) "9"
["category_name"]=>
string(27) "Продукты Адика"
["parent_id"]=>
string(1) "0"
}
}