CodeIgniter: не может получить доступ к $ this в представленной функции - PullRequest
3 голосов
/ 04 июня 2011

Я использую CodeIgniter, и одно из моих представлений стало довольно большим, поэтому я переместил часть кода в функцию в тот же файл:

function html_stuff()
{
    $posts = $this->db->query('select * from posts');
}

При запуске этого кода я получаю следующую ошибку:

Неустранимая ошибка: использование $ this, когда отсутствует в контексте объекта в /somepath/view.php

1 Ответ

7 голосов
/ 04 июня 2011

Вы можете либо передать функцию $this

function html_stuff($ci) {
    $ci->db->query('select * from posts');
}
html_stuff($this);

, либо использовать get_instance()

function html_stuff() {
    $ci = &get_instance();
    $ci->db->query('select * from posts');
}

См .: https://www.codeigniter.com/user_guide/general/creating_libraries.html

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