Doctrine类加载器会覆盖我的__autoload函数

时间:2013-08-22 03:36:54

标签: php doctrine classloader autoload

我通常会误解有关设置自定义类加载器的事情。

一旦我初始化它会发生什么:

use Doctrine\Common\ClassLoader;

require_once(DOCTRINE_PATH . '/Common/ClassLoader.php');
classLoader=new ClassLoader('Doctrine', DOCTRINE_PATH);
classLoader->register();

我之前定义的功能

function __autoload(){}

不再有效。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:2)

在深入了解自动加载文档之后,我发现为了同时拥有多个自动加载器,使用

function __autoload(){}

不是有效的路线。相反,必须定义自定义自动加载功能,例如

function MyAutoLoader()

然后使用

spl_autoload_register('MyAutoLoader');

将其注册到自动加载堆栈。

最后,使用此方法,我的自动加载器不再通过实现Doctrine类加载器来覆盖。