И помните, чтобы использовать различные компоненты Zend Framework в другом проекте, вам просто нужно иметь библиотеку Zend
где-то на вашем include_path
.Копирование всего этого может показаться излишним, если использовать один компонент, но это только дисковое пространство.Наличие этих файлов не влияет на производительность, если они не вызваны.И таким образом, вам не нужно разбирать зависимости, такие как Zend_Exception
и его различные подклассы, специфичные для компонентов.
Так, например, если у вас есть папка myapp/lib
для хранения ваших внешних библиотек, вы просто убедитесь, что ваш путь включения содержит эту папку lib
и скопируйте в нее папку Zend
как myapp/lib/Zend
.
Затем, чтобы использовать такой компонент, как Zend_Translate
, все, что вам нужно сделатьэто что-то вроде следующего:
require_once 'Zend/Translate.php';
$options = array(
// your options here
);
$translate = new Zend_Translate($options);
Имея какой-то механизм автозагрузки, вы можете избежать даже вызова require_once
.Настроить автозагрузку так же просто, как добавить следующее в какой-нибудь общий файл / файл начальной загрузки:
require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance();
Затем любые классы, которые следуют соглашению PEAR 1-class-1-file может быть загружен без явного добавления каких-либо операторов require / include.
Если дисковое пространство действительно является проблемой и вам действительно не нужна вся библиотека Zend
, тогда вы можете исследовать пакетизатор, например, Упаковщик Яни Хартикайнен .