CI框架 -- 驱动器
2016-01-25 13:36
183 查看
驱动器目录及文件结构
下面是驱动器目录和文件结构布局的简单例子:
/application/libraries/Driver_nameDriver_name.php //驱动器名称
drivers //子目录
Driver_name_subclass_1.php //子类文件
Driver_name_subclass_2.php //子类文件
Driver_name_subclass_3.php //子类文件
注:
1、为了在大小写敏感的文件系统下保证兼容性,Driver_name 目录必须以ucfirst() 函数返回的结果格式进行命名。
2、由于驱动器的架构是子驱动器并不继承主驱动器,因此在子驱动器里 无法访问主驱动器中的属性或方法。
使用 CodeIgniter 驱动器
驱动器是一种特殊类型的类库,它有一个父类和任意多个子类。子类可以访问父类, 但不能访问兄弟类。在你的 控制器 中,驱动器为你的类库提供了 一种优雅的语法,从而不用将它们拆成很多离散的类。驱动器位于 system/libraries/ 目录,每个驱动器都有一个独立的目录,目录名和 驱动器父类的类名一致,在该目录下还有一个子目录,命名为 drivers,用于存放 所有子类的文件。
要使用一个驱动器,你可以在控制器中使用下面的方法来进行初始化:
$this->load->driver('class_name');
class_name 是你想要调用的驱动器类名,例如,你要加载名为 Some_parent 的驱动器, 可以这样:
$this->load->driver('some_parent');
然后就可以像下面这样调用该类的方法:
$this->some_parent->some_method();
而对于那些子类,我们不用初始化,可以直接通过父类调用了:
$this->some_parent->child_one->some_method(); $this->some_parent->child_two->another_method();
相关文章推荐
- swift学习笔记之-属性
- 【叶子函数分享五十四】汉字转拼音函数 [转]
- hdu 2524 矩形a+b
- 记录了一个关于smack 的bug,接收到xml但是监听无响应
- ThinkPHP整合微信支付之Native 扫码支付 模式一
- Maven 教程
- mysql sql语句为表批量怎加字段
- sql null
- AdaBoost利用haar-like特征做人脸识别(2)
- 兔子--Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK
- iOS:控制器间的数据传递
- EventBus 使用详解(一)——初步使用 EventBus
- solr schema.xml FieldType属性详解
- 在Xcode中使用Git进行源码版本控制
- 8 Things Every Person Should Do Before 8 A.M.
- 【STL相关】hdu 1027 Ignatius and the Princess II【STL】
- Java中的对象和对象引用实例浅析
- 测试windows live writer功能
- 将es打包成pes时,处理PTS和DTS的方法
- jsp a标签传值到action中,action接收不到传值