Zend автозагрузчик
Я пытаюсь автоматически загрузить формы, найденные в моем проекте в папке application/forms/*. Php (в данном случае LoginForm.php).
Как настроить автозагрузчик Zends для автоматической загрузки этой формы? Поскольку я не хочу использовать уродливые пространства имен, я включаю запасной вариант в моей начальной загрузке. У меня нет ничего связанного с формами, настроенными в моем application.ini
Спасибо!
2 ответа
Автозагрузчик по умолчанию загрузит это для вас. Убедитесь, что вы проверили следующее:-
- Ваш файл - приложение / формы /Loginform.php
Файл содержит что-то вроде этого:
class Application_Form_Loginform extends Zend_Form { //Take special note of the capitalisation - it is important // Also note it is Form NOT Forms public function init() { //Your code here } }
Назовите свой класс так:
$form = new Application_Form_Loginform();
Будьте особенно внимательны к случаю с буквами, важно, чтобы вы все правильно поняли, иначе автозагрузчик не найдет вас в классе и будет жаловаться.
Не уверен, что это ответ на ваш вопрос, так как это немного расплывчато, но попробуйте следующее.
В вашей начальной загрузке:
protected function _initAppAutoload()
{
$moduleLoad = new Zend_Application_Module_Autoloader(array(
'namespace' => '',
'basePath' => APPLICATION_PATH
));
}
Очевидно, что тогда класс Form_LoginForm() будет существовать в application/forms/LoginForm.php