在'本机'Zend Framework应用程序中,我将通过将自动加载器ezComponents添加到Zends自动加载器来启用ezComponents:
$autoLoader = Zend_Loader_Autoloader::getInstance();
require_once('../library/EZComponents/Base/src/base.php');
$autoLoader->pushAutoloader(array('ezcBase', 'autoload'), 'ezc');
Run Code Online (Sandbox Code Playgroud)
现在,我想知道如何用Magento做同样的事情.有没有办法扩展Varien_Autoload(magentos自动加载器)以便轻松集成ezComponents?或者:有没有办法在Magento旁边使用Zends自动装载机而不会相互干扰?
编辑:
好吧,我实现了一个变通方法,在Varien_Autoload中添加以下函数autoload():
if(substr($class, 0, 3) == 'ezc'){
require_once('EZComponents/Base/src/base.php');
return ezcBase::autoload($class);
}
Run Code Online (Sandbox Code Playgroud)
我认为这是一个非常糟糕的黑客,因为它会在升级Magento时被覆盖.有没有人有更好的主意?