在控制器中,您可以使用此方法加载视图,但我想知道幕后发生的事情。
我是PHP和框架的新手,但我已经学习了OOP的基础知识。
调用$this->view()
时,将使用当前类或父类中的方法。
但$this->load->view()
是什么意思?什么是中间load
?它是一个功能还是属性?
它位于哪里?它怎么能包含view()?
感激解释。
答案 0 :(得分:6)
有问题的代码是访问名为load
的成员变量,该变量有一个名为view
的方法。
CodeIgniter按照自己的惯例,在CI“超级对象”中提供其模型和库作为成员变量,这是控制器的一个实例。您可以将所有模型和插件视为单例,其单个实例被指定为CI自动创建的控制器的单例实例的成员。
此特定中的load
成员是CI_Loader的实例,它负责加载其他模型,视图和库。反过来,它会将它们分配给控制器实例中的自己的成员变量。
答案 1 :(得分:3)
load
是当前对象的属性。属性本身包含一个具有view()
方法的对象。
答案 2 :(得分:0)
我会阅读有关View Object
的{{3}}以获取更多信息。
答案 3 :(得分:0)
简单地说,$ superclass
具有load
属性或对象,而view
()是方法名称
$superclass->object->method