我试图了解$this-> load-> view()如何在CodeIgniter中的视图文件中工作.
core / Controller.PHP调用core / Loader.PHP,然后调用_ci_load(),然后调用include(‘/ path / to / view’);
难道$this不应该指那个Loader类吗? $这是指控制器?
根据我的理解,你应该在视图文件中调用$this-> view().不是$this-> load-> view()因为在Loader中无法访问load()函数.它是Controller基类的类变量.即,$this-> load =& load_class( ‘装载机’);
请注意:我正在尝试理解CodeIgniter内部.我非常清楚如何将视图文件作为CodeIgniter用户嵌入到其他视图文件中.请不要留下解释如何使用$this-> load()的答案.
解决方法:
我上次检查时,$这是类CI_Loader,尝试var_dump($this);在视图内.
查看:
https://github.com/EllisLab/CodeIgniter/blob/develop/system/core/Controller.php
is_loaded();返回一个数组,其中包含已加载的类名及其主容器中的别名.
$this-> load是控制器内部的CI_Loader实例.
校验:
https://github.com/EllisLab/CodeIgniter/blob/develop/system/core/Loader.php
778行