6

我正在使用 Codeigniter 使用此处描述的方法对一些核心类进行自动加载:

http://philsturgeon.co.uk/blog/2010/02/CodeIgniter-Base-Classes-Keeping-it-DRY

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

但是,一旦我安装了 composer(为了使用 Eloquent),这个功能就不再起作用了。有任何想法吗?

谢谢!

4

1 回答 1

15

__autoload 是旧的、已弃用的自动加载方式,因为您只能拥有一个。

您应该使用spl_autoload_register注册您的自动加载器。例如:

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

spl_autoload_register('customCIAutoload');

这样你的自动加载器和作曲家将愉快地共存。

于 2013-04-04T08:42:11.487 回答