此答案中使用的方法可能会有所帮助。一个定制的自动装载机似乎是去这里的方式。——</p>
将以下行添加到 application.ini
autoloadernamespaces[] = "App_"
如果你保留你的库文件,调整它以匹配,我把我的保留在library/App
.
在 App/Loader/Autoloader/Project.php 中创建您的自动加载器,如下所示:-
class App_Loader_Autoloader_Project implements Zend_Loader_Autoloader_Interface
{
public function autoload($class)
{
$project = explode('_', $class);
if ($project[0] != 'Project'){
return false;
}
$project[0] = '/www/core';
require_once implode('/', $project) . '.php'
return $class;
}
}
在引导程序中初始化自动加载器:-
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initAutoloading() {
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->pushAutoloader(new App_Loader_Autoloader_Project());
}
}
显然,我没有与您匹配的环境,因此无法对此进行测试。但是,我已经根据我自己对自动加载器的使用对其进行了调整,因此它应该可以在没有太多调整的情况下工作。
由于David Weinraub 发布的答案,我最初遇到了这种技术,并且从那以后发现它非常有用。
说了这么多,akond 的回答是很好的建议,将是首选;与框架合作,而不是反对它。如果这不是您的选择,我会提供此答案。