Раскройте тайну MVC )))
У нас есть класс class ModelExtensionModule extends Model
При создании любых модулей у нас происходят обращения к другим методам класса не через объект а по таким записям $this->model_extension_module->addModule
нигде в литературе не могу этого найти.
плюс есть переменная массива $data['некоторый ключ'] Которая тоже не понятно где описывается.
Но знаю что она преобразует ключи в переменные и выводит их в представлении.
Потому что выше по коду идет вызов $this-load->model('extension/module'), где создается экземпляр модели, и называется он по пути к модели. Покопайтесь в движке и поймете.
Через метод model объекта load $this-load->model('extension/module') мы грузим сам файл.
Но вот вопрос почему мы все-таки не пишем так $this->ModelExtensionModule а пишем
$this->model_extension_module через ниж регистр папок нахождения файла.