【发布时间】:2019-02-08 19:22:15
【问题描述】:
代码点火器:
我正在使用语言/english/pages/about-me_lang.php:
<?php echo $this->lang->line('url_Contact')?>
我收到了这个错误:
Message: Call to a member function line() on null
所以 $this 没有 lang...
我应该使用什么来获取语言行变量?
怎么知道那是 $this 呢?我的意思是整个事情(Codeigniter)
谢谢
更新 1:
就在这里,在这些文件中使用 $this-> 将不起作用,例如 $this->load 或 $this->lang。
这里的 $this 是什么以及如何获取可以在那里加载文件的 $this?
更新 2:
$this 适用于类上下文。
也就是说views文件夹中的一个php文件属于一个类(是不是来自controler类上下文?),但是language下的php文件不是,嗯...
更新 3:
因此,我们有 CI_Loader 并基于此:https://www.codeigniter.com/user_guide/libraries/loader.html
对自己负责的事情负责:)
...但是,在语言文件夹下,我们有一个不同的东西:
because when I try: $this->load->model('functions');
我明白了:
Message: Undefined property: CI_Lang::$load
现在,如何使用 CI_Lang 类获取该变量?
更新 4:
找到解决方案,将其作为单独的答案发布在下面!
【问题讨论】:
-
好吧,您可能必须加载
lang的东西。因为它没有加载它是空的。$this->load->library('lang');之类的东西我忘了已经过了一分钟。也可以是language。如果您在可以加载它的任何地方都需要它,我想说钩子可能......我知道有一个地方可以全局加载它..大声笑查找文档。 -
$this 适用于类上下文。你是在课外叫它吗?另外请分享更多关于 $this->lang 初始化位置的代码? about-me_lang.php 里面的代码是什么?
标签: php codeigniter