Чтоб загружать в Zend Framework свои библиотеки, нам надо сделать следующее:
Первое — это добавить физический путь к библиотеке в include_path.
Второе — это указать префикс классов библиотеки, если такой вообще используется.
Добавить путь в include_path можно двумя способами:
1. Жетско прописать путь в public/index.php файле:
- set_include_path(implode(PATH_SEPARATOR, array(
- realpath(APPLICATION_PATH . '/../library'),
- realpath(APPLICATION_PATH . '/../mylib'),
- get_include_path(),
- )));
2. Прописать путь в конфигруационном файле application/configs/application.ini
- includePaths.mylib = APPLICATION_PATH "/../mylib"
В обоих случаях мы добавляем путь к mylib в include_path. Второй способ более предпочтительный, так как на основе выбранной конфигурации (production, develeopment, test) можно устанавливать путь к различным версиям mylib.
Кстати используя этот же прием, можно устанавливать путь и к каталогу library/Zend и на основе конфигураций подгружать различный версии Zend Framework.
И так, второе что нам необходимо сделать — это подключить автозагрузчик и установить префикс используемый классами библиотеки.
Я прописал автозагрузчик в файле public/index.php
- require_once 'Zend/Loader/Autoloader.php';
- $loader = Zend_Loader_Autoloader::getInstance();
- $loader->registerNamespace('My_');
В данном случае префикс классов в моей библиотеки "My_".
Также, этот же код можно прописать и в классе Bootstrap.php
- protected function _initAutoload()
- {
- require_once 'Zend/Loader/Autoloader.php';
- $loader = Zend_Loader_Autoloader::getInstance();
- $loader->registerNamespace('My');
- }
Все, теперь ZF знает как загружать классы из вашей бибилиотеки.
© Yaroslav Vorozhko for
Add to
Post tags:
Комментариев нет:
Отправить комментарий