学习CodeIgniter框架之旅(二)继承自定义类

  在不少状况下,框架类并不能知足项目的需求,这时候须要程序要自定义一些类,好比说基类等等,对比了TP框架,CI框架目前好像还没加入命名空间,这点TP作得比较好,不用特殊的处理就能够随便继承自定义的类,只要处理好命名空间就行,在没有加入命名空间的CI框架怎么办呢?php

  思路:在入口文件作文章,这是在网上找到的办法;框架

  在入口文件加入自动加载的代码:spa

function __autoload($class) {
	if (strpos($class, 'CI_') !== 0) {
		@include_once(APPPATH . 'common/' . $class . EXT);
	}
}

  我的以为这种方法很不错,那这是怎么实现的呢?blog

  • 由于CI框架类都会自带一个CI_做为类的前缀,所以只要自定义的类不要用CI_做为前缀是能够区分出来的,而后引入进来便可;
  • 代码以下:
// 自定义公共目录路径
define('COMMONPATH', APPPATH . 'common' . DIRECTORY_SEPARATOR);

function __autoload($class) {
	if (strpos($class, 'CI_') !== 0) {
		@include_once(COMMONPATH . $class . '.php');
	}
}

  这样在common目录自定义的类就能够被继承了。继承

相关文章
相关标签/搜索