这是一个加载视图和文件的类。
__construct()
设置视图文件的路径,和获取输出缓冲级别。
initialize()
该方法只会被CI_Controller调用一次,会调用 $this->_ci_autoloader();
自动去加载 config/autoload.php
中设置的类。
library()
该方法用来调用 system/libraries 路径下的可用的工具库,比如 FTP Class, Encryption Library等。主要是被应用控制类调用。
model()
该方法用来调用和加载模型类。这是MVC模型中的M,用来写一些逻辑处理的方法。
database()
该方法用来调用和加载数据库。
dbutil()
该方法用来调用和加载数据库工具类,包括优化表,修复表,优化数据库等。
dbforge()
该方法用来制造数据库类。包括创建数据库,删除数据库等。
view()
该方法用来加载视图类。这是MVC模型中的V,用来写页面内容和逻辑。
file()
该方法用来单纯加载文件。
vars()
该方法用来设置变量,以便在控制器和视图中都能调用。
get_var($key)
该方法用来检查变量是否设置和获取它。
helper($key)
该方法用来加载帮助函数。
config()
该方法用来加载配置文件。
driver()
该方法用来加载驱动器。驱动器可以使开发者方便的通过一个统一的类来调用该类下不同的子类。比如调用一个社交分享,可以通过$this->load->driver('socialshare'); this->socialshare->twitter->share();
来调用,概念有点类似于工厂模式,但我觉得比工厂模式复杂,因为工厂模式没有 load->driver 这一步,而是直接实例化socialshare类,这里为了能够更加的抽象和模块化,会把这一系列模块通过driver加载。 参见: CodeIgniter中驱动器的使用方法,该文有一个简单的实例。
_ci_load()
该方法用来加载视图文件或者其它文件。
_ci_load_library()
该方法为内部方法,用来加载 system/libraries 路径下的可用的工具库。
_ci_autoloader()
该方法为自动加载函数,加载在 config/autoload.php 中设置的组件。