Есть двумерный массив $categories, в котором содержатся массивы с ключами name, category_id и parent_id. Нужно как-то с помощью рекурсии создать новый массив $category_id, в который добавлять category_id до тех пор, пока parent_id не будет нулем. Здесь $this->data['link'] это ссылка на конечную подкатегорию, у которой может быть сколько угодно родительских категорий. Для этого собственно говоря и нужен массив $category_id, чтобы знать айдишники всех родительских категорий. Надеюсь что понятно объяснил...))
$category_id = [];
foreach ($categories as $category) {
if ($category['name'] == $this->data['link']) {
array_push($category_id, $category['category_id']);
function find() {
if ($category['parent_id'] != '0') {
foreach ($categories as $category) {
if ($category['parent_id'] == $category['category_id']) {
array_push($category_id, $category['category_id']);
}
find();
}
}
}
}
}
Всем спасибо, оказалось все намного проще: на этапе формирования ссылки я создавал массив со всеми родителями выбранной категории
$arr = explode(' > ', $this->data['link']);
соответственно для решения моего вопроса нужен был вот этот простой код:
$category_id = [];
for ($i = 0; $i < count($categories); $i++) {
for ($j = 0; $j < count($arr); $j++) {
if ($categories[$i]['name'] == $arr[$j]) {
$category_id[] = $categories[$i]['category_id'];
}
}
}
На сайте используется шаблонизатор SmartyИмеется такой код:
Есть пост обработчик который принимает $id товараКак сделать массив в который будут добавляться товары в конец, а потом массив в сессию
Никак не могу понять где собака зарытаВот код mysqli
Добрый деньНедавно начал изучать html и php, и столкнулся с проблемой, которую никак не могу решить