CodeIgniter - 使用CodeIgniter的现有类,直接包含它们的任何问题?

Ext*_*kun 2 php codeigniter

我正在考虑使用CodeIgniter作为我下一个Web应用程序的框架.但是,我已经定义了大量的辅助类和数据结构.我可以将它们添加到应用程序的库中,但我必须重命名大量文件和类的名称以匹配标准

我是否可以直接包含文件,就像在正常的Web应用程序上工作一样,绕过load-> library()?或者是为常用的类保留了库?

Phi*_*eon 8

更好的是,把一个__autoload()放在config.php的底部(一个奇怪的地方,但相信我是最好的)并让它检查应用程序/类/然后检查应用程序/功能.

/*
| -------------------------------------------------------------------
|  Native Auto-load
| -------------------------------------------------------------------
| 
| Nothing to do with config/autoload.php, this allows PHP autoload to work
| for controller types and some third-party libraries.
|
*/
function __autoload($class)
{
    if(strpos($class, 'CI_') !== 0)
    {

        $lib = APPPATH . 'libraries/'. $class . EXT;
        $class = APPPATH . 'classes/'. $class . EXT;            

        if(file_exists($class))
        {
            include_once( $class );
        }
        else if(file_exists($lib))
        {
            include_once( $lib );
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这样你就不必担心事情是如何加载的.按预期使用核心库并使用您的类而不包括它们.您甚至可以开始将类移动到库中而无需过多担心命名约定或加载器,并且libs可以是静态的,单例,无论使用此方法.