CodeIgniter, возможно ли использовать хелпер внутри пользовательского хелпера? - PullRequest
1 голос
/ 24 марта 2012

Я пишу свой пользовательский помощник.Я пытался использовать вспомогательный язык:

$this->lang->line('site_title')

Я получаю сообщение об ошибке:

Fatal error: Using $this when not in object context in
C:\Users\guest\Wamp\www\codeIgniter\application\helpers\blog_helper.php on line 15

Ответы [ 2 ]

9 голосов
/ 24 марта 2012

Если вы хотите вызывать методы из суперобъекта CodeIgniter внутри помощника (или пользовательской библиотеки), вам нужно использовать функцию get_instance().Это будет ссылаться на суперобъект CodeIgniter на переменную $ ci - поэтому вы можете вызывать методы CodeIgniter, используя $ci вместо $this:

$ci =& get_instance();
$site_title = $ci->lang->line('site_title');
0 голосов
/ 26 марта 2012

Или вы также можете использовать языковой помощник:

$ site_title = lang ('site_title');

http://codeigniter.com/user_guide/helpers/language_helper.html

Это предполагает, что помощник до этого момента. В противном случае просто сделайте, как указано выше.

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