Zend (v1) автозагрузчик не работает
Я немного растерялся прямо сейчас. Я пытаюсь установить свою собственную библиотеку, но автозагрузчик, похоже, не работает. Этот пример был самым близким, который я нашел, но все решения не работали для меня.
Это моя структура папок.
-application
|_modules
|_vita
|_controllers
|_IndexController.php
-data
-docs
-library
|_ND
||_Model
| |_Vita
| |_Vita.php
|_Zend
-public
-tests
Это мой бутстрап.
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
...
protected function _initAutoloader()
{
$loader = Zend_Loader_Autoloader::getInstance();
$loader->registerNamespace('ND_');
return $loader;
}
...
}
Это мой полный application.ini (я знаю, что инструкция autoloaderNamespaces двойная с инструкцией в начальной загрузке, но она не работает с обоими или с каждым из них по отдельности)
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
; automatic loading of libraries
autoloaderNamespaces[] = "ND_"
phpSettings.date.timezone = "Europe/Berlin"
;resources.frontController.controllerDirectory = APPLICATION_PATH "/modules/index/controllers"
;resources.frontController.params.displayExceptions = 0
;appnamespace = "Application"
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.frontController.params.prefixDefaultModule = true
resources.frontController.defaultModule = "index"
resources.frontController.throwerrors = false
resources.frontController.params.displayExceptions = 0
; resources (modules)
resources.modules[] = ""
resources.view[] = ""
; resources (layout)
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
resources.layout.layout = "main"
; db settings
resources.db.adapter = "PDO_MYSQL"
resources.db.isDefaultAdapter = true
resources.db.params.host = "localhost"
resources.db.params.username = "root"
resources.db.params.password = ""
resources.db.params.dbname = "nd"
[staging : production]
[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1
Это мой контроллер, в котором я пытаюсь создать экземпляр класса "Vita", но всегда получаю эту ошибку: "Неустранимая ошибка: класс 'ND_Model_Vita_Vita' не найден в C:\xampp\htdocs\ND\application\modules\vita\controllers\IndexController"..php на линии 17"
class Vita_IndexController extends Zend_Controller_Action
{
public function init()
{
$this->view->headTitle('Vita');
}
public function indexAction()
{
/* Just to try if the Loader is working for the Zend library -> it works */
$this->newForm = new Zend_Form();
$this->mdlVita = new ND_Model_Vita_Vita();
Zend_Registry::get('log')->info($this->mdlVita->test());
}
}
И это класс Vita
class ND_Model_Vita_Vita
{
public function test()
{
return 'Is working';
}
}
Есть ли что-то, что я мог упустить из виду или я должен иметь в виду при использовании модулей? Я благодарен за любое предложение.
РЕДАКТИРОВАТЬ: я сузил вопрос, чтобы иметь какое-то отношение к среде xampp. Я перенес проект в папку live-apache, и там он заработал.