1. Установка
Загрузите последнюю версию с веб-страницы Zend Framework. После распаковки скопируйте весь каталог в идеальное место, например: /php/library/Zend.
Откройте файл php.ini и убедитесь, что путь, содержащий каталог Zend, определен в include_path. Если взять приведенную выше конфигурацию в качестве примера, то в php.ini должны быть записи, подобные следующим:
include_path = ".:/php/library"
Примечание. Метод записи в Windows немного отличается и должен быть аналогичен include_path = ". ;C:php library"
Первоначальная установка очень проста. Некоторые компоненты Zend Framework будут использовать дополнительные модули PHP. Пожалуйста, обратитесь сюда для ознакомления с конкретными требованиями.
2. Структура каталогов проекта.
Если ваш проект не содержит нескольких модулей, вы можете использовать следующую структуру каталогов:
application/controllers/IndexController.phpmodels/views/scripts/index/index.phtmlhelpers/filters/html/.htaccessindex.php, если Если ваш проект содержит несколько модулей (например: блог, сообщество и т. д.), рекомендуется использовать модульную структуру каталогов.
3. Корневой каталог веб-страницы.
Корневой каталог веб-страницы должен указывать на папку html в приведенной выше структуре каталогов.
4. Перезапись правил.
Отредактируйте файл html/.htaccess и добавьте следующие две строки:
RewriteEngine onRewriteRule !.(js|ico|gif|jpg|png|css)$ index.php Примечание. Выше приведена конфигурация для Apache. Если это другой сервер, пожалуйста, обратитесь сюда.
5. Отредактируйте файл html/index.php в загрузочной программе
и введите следующий код:
<?phprequire_once'Zend/Controller/Front.php';$rootPath = dirname(dirname(__FILE__));Zend_Controller_Front::run($ rootPath .'/application/controllers'); Функция приведенного выше кода — создать экземпляр фронт-контроллера (Front Controller) и запустить его. 6. Контроллер действий по умолчанию
Правилом маршрутизации по умолчанию в Zend Framework является http://имя домена/имя контроллера/имя действия (метода). Например:
http://example.com/user/show будет анализироваться на контроллере с именем User и методе show, определенном в контроллере. Если этот метод не определен, по умолчанию используется индексный метод.
Примечание. В коде контроллер следует добавить после имени контроллера, а действие — после имени действия.
Отредактируйте файл application/controllers/IndexController.php и введите:
<?php
/** Zend_Controller_Action */
require_once'Zend/Controller/Action.php';
classIndexControllerextendsZend_Controller_Action
{
публичная функцияindexAction()
{
}
}
7. Отредактируйте сценарий представления (страницы)
application/views/scripts/index/index.phtml, введите:
<!DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"" http://www. w3 .org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />< title >Мое первое приложение Zend Framework</title></head><body><h1>Привет, мир!</h1></body></html>8. Контроллер ошибок
По умолчанию подключаемые модули обработки ошибок Zend Framework. зарегистрирован. Для обработки ошибок требуется контроллер ошибок. Предполагается, что обработкой контроля ошибок по умолчанию является ErrorController и определенное в нем errorAction.
Отредактируйте application/controllers/ErrorController.php и введите:
<?php
/** Zend_Controller_Action */
require_once'Zend/Controller/Action.php';
classErrorControllerextendsZend_Controller_Action
{
публичная функцияerrorAction()
{
}
}
Ниже приведен соответствующий сценарий просмотра. Отредактируйте файл application/views/scripts/error/error.phtml и введите:
<!DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"" http://www.w3.org/TR/xhtml1/DTD /xhtml1-strict.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>Ошибка</title></ head><body><h1>Произошла ошибка</h1><p>Произошла ошибка; повторите попытку позже.</p></body></html>9.
Теперь запустите веб-сайт. Введите в браузер следующие три адреса, и результат должен быть одинаковым — самый обычный «Hello, World!».
http://доменное имя
http://доменное имя/индекс
http://доменное имя/индекс/индекс
Если да, поздравляем!