Какова структура имен классов автозагрузки для корневого каталога «библиотека» в проекте Zend Framework 1.10.2? - PullRequest
0 голосов
/ 23 марта 2010

У меня есть проект, который я создал с помощью Zend Framework 1.10.2.

Обычно я использую каталог application / models для создаваемых файлов новых моделей, и автоматическая загрузка в порядке, например, My_Model_SampleClass находится в application / models / SampleClass.php

Однако я только что создал собственный класс Exception, и он не помещается в каталог models внутри dir приложения (по крайней мере, как я его вижу, я мог бы быть логически неправильным), поэтому я создал его в корневой каталог «библиотека», но я не могу найти правильное имя класса + имя файла для использования, поэтому автоматическая загрузка будет выполнена правильно.

Кстати, я использую пространство имен для всех пользовательских классов, которые я использую, давайте предположим, что это "My".

Ответы [ 2 ]

1 голос
/ 24 марта 2010
class My_Exception extends Zend_Exception {}

сохранено в:

/library/My/Exception.php

в application.ini:

autoloaderNamespaces[] = "My_"

или взгляните на resourceLoader:

// in Bootstrap.php
Zend_Debug::dump($this->_resourceLoader);

Вы можете использовать это так:

$this->_resourceLoader->addResourceType('exception', 'exceptions', 'My_');
1 голос
/ 23 марта 2010

если вы используете application.ini, попробуйте это

autoloader.namespace = My
autoloader.resourceTypes.exceptions.path = "library"
autoloader.resourceTypes.exceptions.namespace = "Model"
...