zoukankan      html  css  js  c++  java
  • 学习CodeIgniter框架之旅(二)继承自定义类

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

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

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

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

      个人觉得这种方法很不错,那这是怎么实现的呢?

    • 因为CI框架类都会自带一个CI_作为类的前缀,因此只要自定义的类不要用CI_作为前缀是可以区分出来的,然后引入进来即可;
    • 代码如下:
    // 自定义公共目录路径
    define('COMMONPATH', APPPATH . 'common' . DIRECTORY_SEPARATOR);
    
    function __autoload($class) {
    	if (strpos($class, 'CI_') !== 0) {
    		@include_once(COMMONPATH . $class . '.php');
    	}
    }
    

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

  • 相关阅读:
    CF351A Jeff and Rounding 思维
    CF352B Jeff and Periods 模拟
    CF352A Jeff and Digits
    小B的询问 莫队分块
    小凯的疑惑 数学
    BestCoder Round #80 待填坑
    [SDOI2009]HH的项链 树状数组 BZOJ 1878
    Blocks poj 区间dp
    [USACO5.4]奶牛的电信Telecowmunication 最小割
    数位dp
  • 原文地址:https://www.cnblogs.com/timothy-lai/p/6207267.html
Copyright © 2011-2022 走看看