Наследование в codeigniter 3.Сделать базовый контроллер который наследует CI_Controller. Как правильно организовать?

139
29 сентября 2018, 22:10

Наследование в codeigniter 3. Прочитал документацию не смог понять. Есть у меня контроллер Trekking и он наследует CI_Controller.

class Trekking extends CI_Controller {}

И надо сделать чтоб другие контроллеры тоже могли наследовать class Trekking.

class Main extends Trekking {}

Подскажите как это правильно организовать, чтоб методы в class Trekking могли были доступны и в других контроллерах. Еще в class Trekking могли передаваться параметры.

Answer 1

Крч, я не совсем разобрался как вы собираетесь передавать параметры, но знаю как делается кастомный контроллер.

У вас в папке application есть папка core, там создаем файлик MY_Controller.php с таким текстом:

<?php
class Trekking extends CI_Controller
{
    function __construct() {
        parent::__construct();
    }
}

И по идеи, должно все работать, если не заработает, напишите в комментарии я подправлю на второй вариант (а такой имеется).

По поводу параметров я не понял, но как-то так?)

class Trekking extends CI_Controller
{
    public $id = NULL
    function __construct() {
        parent::__construct();
    }
    public function setId($id)
    {
        $this->id = $id;
    }
}

Теперь метод setId доступен у всех контроллеров которые унаследованы от Trekking

READ ALSO
Зависают php процессы

Зависают php процессы

Есть скрипт который поднимает по 5 параллельных процессов в секунду, каждый процесс шлет запрос на апи, после получения ответа умирает и поднимаются...

177
Подгрузка данных в нужную структуру

Подгрузка данных в нужную структуру

На сайте есть скрипт, который постоянно подгружает записи в таблицу(table) из БД

164