我删除了文件夹“library / Zend”中的每个Zend Framework类,我使用的是1.7版本,并希望升级到1.12。删除后,我在“library / Zend”中上传了Zend Framework 1.12类。
我在加载课程时遇到了问题。在“public / index.php”中,我使用了registerAutoload()
。这被删除了所以我改为:
require_once 'Zend/Loader/Autoloader.php';
$loader = Zend_Loader_Autoloader::getInstance();
然后,对于我在Controller中使用的每个类,我必须手动添加它:
$loader->registerNamespace('Paths');
$loader->registerNamespace('Certificate');
$loader->registerNamespace('Zim_Properties');
$loader->registerNamespace('Zim_Controller_Dispatcher');
$loader->registerNamespace('Controller_Plugin_ActionSetup');
$loader->registerNamespace('Controller_Plugin_History');
$loader->registerNamespace('Zim_Model');
$loader->registerNamespace('Zim_Controller_Action');
$loader->registerNamespace('Controller_ProposalInvoice');
$loader->registerNamespace('Stats');
$loader->registerNamespace('Controller_ArticleService');
如果删除此registerNamespace,我会得到Fatal error: Class 'Controller_ArticleService' not found in /home/juliaxd8/domains/jmediatechnology.eu/public_html/factuurtogo2/application/controllers/ArticleController.php on line 3
由于手动注册,我可能会忘记某些事情/写错字。我可以自动加载课程吗?
答案 0 :(得分:0)
我在我的一个项目的Bootstrap.php文件中有一个类似这样的函数,我认为这样做:
protected function _initAutoload()
{
$modelLoader = new Zend_Application_Module_Autoloader(
array('namespace' => '',
'basePath' => APPLICATION_PATH . '/modules/default'));
return $modelLoader;
}