Mam taką strukturę aplikacji w przybliżeniu:
/projekt /application /library /App /modules /front /library /Front /controllers /models /forms ... Bootstrap.php /admin /library /Admin /controllers /models /forms ... Bootstrap.php ... Bootstrap.php /library /My /Zend ... ... index.php
Jak widzicie koledzy mam kilka przestrzeni nazw dla klas:
My, Zend, App, Front, Admin
Nie ma problemu z autolaodem klas My, Zend i App ponieważ początkowy include_path zawiera ścieżki '/library' (My, Zend) oraz '/application/library' (App) - w przypadku tych bibliotek w autoladerze wystarczy że zarejestruję odpowiednie przestrzenie nazw: $autolaoder->registerNamespace(array('My', 'App'));
Pytanie jest teraz takie jak zrobić aby dynamicznie do include_path lądowały ścieżki do katalogu library w modułach - tak żebym mógł również zarejestrować przestrzenie nazw Front i Admin - a w przyszłości także inne specyficzne dla kolejnych modułów.
Chodzi mi oczywiście o zrobienie tego z wykorzystaniem mechanizmów zenda, najlepiej w bootstrapach poszczególnych modułów. W chwili obecnej obszedłem problem w ten sposób że w index.php na sztywno dopisałem do include_patha ścieżki /application/modules/front/library i /application/modules/admin/library a w bootstrapach dla modułów dodaję te przestrzenie nazw.
Brakuje mi w tym przypadku czegoś takiego jak ma Zend_Loader_PluginLoader gdzie mamy metodę addPrefixPath('Admin', '/application/modules/admin/library/Admin').
Proszę o pomoc. Być może jest jakiś mechanizm którego ja nie dostrzegam / nie umiem skorzystać.