Хорошо, поэтому все в CodeIgniter проходит через супермагическую переменную $this
. Это работает только для классов, так как $this
в основном определяет текущий класс.
Ваш контроллер является классом, так что $ это здесь, что позволяет вам сделать $this->load->model('whatever');
В моделях вы также используете класс. Здесь он немного отличается, так как $this
содержит только полезные вещи, которые вы расширяете от Model. Тем не менее, $this
все еще действует.
Когда вы используете помощника или библиотеку, вам нужно найти этот «экземпляр» или $this
эквивалент.
$ci =& get_instance();
… заставляет $ci
содержать точно такой же материал / код / полезность, что и $this
, даже если вы не в классе или не в классе, который его наследует.
Это объяснение для начинающих после 2-х пинт, так что это либо неправильно, либо примерно правильно. ; -)