Всем привет. Хочу понять, что я делаю не так. Скорее всего я чего-то не понимаю и с такой проблемой столкнулся впервые. Есть код:
foreach ($children as $child) {
$child['href'] = $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $child['category_id'] . $url);
var_dump($child); //здесь массив из 17 элментов, в т.ч. 'href'
}
var_dump($children); //здесь массив массивов, в которых по 16 эл. и 'href' нет.
Получается foreach не изменяет массив $children? Скорее всего вопрос глупый)
Я понимаю, что можно добавить еще один массив и сделать вот так:
$children = $this->model_catalog_category->getCategories($result['category_id']);
$children_cats = array();
foreach ($children as $child) {
$child['href'] = $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $child['category_id'] . $url);
$children_cats[] = $child;
var_dump($child);
}
var_dump($children_cats);
Тогда все будет как нужно. Нормально ли так? Или можно обойтись без лишнего массива?