$ this - > CodeIgniter中的语法

时间:2014-10-24 16:32:11

标签: php codeigniter codeigniter-2 codeigniter-hmvc

我对CodeIgniter框架和PHP相当新,我想弄清楚以下源代码的作用:

isset($this->page->data->Metadata->Metadata->View);

根据我的理解,isset()检查变量View是否已设置,但令我困惑的是我找不到page类(.php的位置)包含View变量的文件)在我的项目文件夹中的任何位置,也无法在CodeIgniter库中找到page类。

有人可以分解这些代码,并详细解释一下吗?

1 个答案:

答案 0 :(得分:3)

你应该真正开始学习基本的OOP(面向对象的编程)。

PHP中的->运算符是一种访问类的成员变量和成员函数/方法的方法。 $this引用它所访问的对象。在你的情况下,我想,你的控制器或模型。 $this现在引用你的控制器。

现在您可能想知道,page在哪里,因为您无法在控制器中看到它。您的控制器正在扩展codeigniter框架的Base控制器,并且会定义成员变量page。 变量page本身是一个对象,它声明了成员变量datadata也拥有一个对象,它有成员变量Metadata,这个... < / p>

我希望你明白这个想法。

完整语句检查是否在存储在变量View中的对象上设置了Metadata成员变量。

如果你不了解这一点。您应该阅读PHP和OOP的基础知识以及PHP的上下文!这是值得的。相信我!