Создание массива в массиве из 3 записей таблицы с использованием l oop в Codeigniter - PullRequest
1 голос
/ 20 июня 2020

Я новичок в системе codeigniter. Я создаю массив внутри сценария массива для записи 3 таблиц.

У меня есть категории, затем подкатегории, а затем подкатегории, как вы видите на изображении

Смартфоны - это категория, затем Apple - подкатегория, а в подкатегории - подкатегория

enter image description here

Файл контроллера

    public function index() {
    $all_devices = $this->devices_model->all_devices();
    $this->data['all_devices'] = array();
    if($all_devices)
    {
        foreach ($all_devices as $device) {
            $all_manufacturers = $this->manufacturers_model->all_manufacturers($device['id']);
            if(!empty($all_manufacturers))
            {
                $isProduct = false;
                foreach ($all_manufacturers as $key => $manufacture) {

                    $all_models = $this->models_model->all_models($manufacture['id']);

                    if($all_models)
                        {
                            $isProduct = true;
                        }
                    $all_manufacturers[$key]['model'] = $all_models;

                    if($isProduct)
                    {
                        $model_single["all_manufacturers"] = $all_manufacturers;
                        $this->data['all_devices'][] = $model_single;             
                    }  
                }
            }
        }
    }
    $this->load->view($this->theme.'products',$this->data);
}

Файл моделей

public function all_devices()
{
     $result = $this->db->get("devices")->result_array();
     return $result;
}
public function all_manufacturers($device_id)
{
    $this->db->where("fk_device_id", $device_id);
    $result = $this->db->get("manufacture")->result_array();
    return $result;
}
public function all_models($id)
{
    $this->db->where("fk_manufactureid", $id);
    $result = $this->db->get("models")->result_array();
    return $result;
}

Проблема в том, что я не может правильно составить массив.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...