Как установить zend framework 3 linux ubuntu

Обновлено: 04.07.2024

После этого выполните эту команду

Но после первой команды вторая команда

И показывая эту ошибку

Обновление после некоторых комментариев:

Теперь я скачал ZendSkeletonApplication-master и переместил

Папке библиотеки ZendFramework-2.3.1

Но после этого когда я получаю доступ к этому я получаю эту ошибку на странице

ZendSkeletonApplication-master/public/index.php // в браузере он показывает мне эту ошибку

3 ответа

Я установил zend framework на ubuntu 8.04 по этой статье. и обнаружил , что это 1.5-я версия zf, но я хочу установить версию 1.11. Я думаю, что сначала мне нужно удалить старую версию. а затем установите новую версию. Ой, я забыл запустить команду sudo apt-get update

Ну возможны два решения :

Первое обновление php, однако вполне возможно, что выпуск Ubuntu в вашей системе не имеет обновлений для php. Так что в этом случае поищите в Google, чтобы добавить репозиторий APT для php 5.3.23 для вашего ubuntu-VERSION.

Во-вторых, я лично испытал, что при проверке в папке вы найдете файл composer.json, В этом файле вы получите настройки что-то вроде

Просто измените настройки, чтобы получить другую версию ZF2

Это работает на меня. Это должно сработать для вас.

Прочитайте ошибку, главное, на чем нам нужно сосредоточиться, это: zendframework/zendframework 2.3.1 требует php >=5.3.23 -> соответствующий пакет не найден.

Я разберу его для тебя.

Это означает, что пакет, который вы пытаетесь install(zendframework/zendframework 2.3.1) REQUIRES версия php БОЛЬШЕ ИЛИ РАВНА 5.3.23. Как указано в вашем выводе php-v, вы используете PHP 5.3.10. Если вы работаете на локальном сервере, на котором у вас есть доступ к обновлению версии php, затем обновите php и запустите его снова, вы увидите, что он работает нормально. Если вы находитесь на удаленном сервере, обратитесь в свою хостинговую компанию и узнайте, могут ли они обновить вас до более новой версии php, а затем запустить ее снова!

Надеюсь, это поможет!

Если у вас установлено более одной версии php и у вас есть переменная среды php, ссылающаяся на старый исполняемый файл php, то вы можете получить эту проблему. Измените переменную среды на php, которую вы хотите использовать.

Похожие вопросы:

EDIT: он существует сейчас: ZFTool Я пытаюсь установить Zend Framework 2 на свою систему ubuntu. Я установил ZF1.11.11 с apt-get install zend-framework , но я хотел бы установить последнюю версию.

Я бегу ubuntu Харди Я установил zend framework с помощью команды : sudo apt-get install zend-framework Почему он не установил zf.sh ? Я хочу иметь возможность использовать zend_tool с помощью cli.

У меня установить zend framework, используя схему приложения на моей машине т. е. ubuntu 14.04 LTS. Я выполните следующие действия. создайте базовую папку приложения и выполните следующие команды.

Я установил zend framework на ubuntu 8.04 по этой статье. и обнаружил , что это 1.5-я версия zf, но я хочу установить версию 1.11. Я думаю, что сначала мне нужно удалить старую версию. а затем.

У меня есть сервер VPS, и мне нужно установить Zend Framework для его клиентской библиотеки Google. Я не знаю, Могу ли я установить Zend для конкретного сайта или мне нужно установить его как.

Я хотел бы установить тип repsonse mime на application/xhtml+xml Как и где я могу установить это в Zend Framework? Спасибо за помощь.

Я установил плагин php zend framework 2 в netbeans 7.3 Но я не могу создать проект zendFrameWork2 ! Как установить zend framework 2 в netbeans 7.3 ? Спасибо

В общем, рекомендуется использовать популярный и хорошо поддерживаемый дистрибутив Linux, 32-битный (x86) либо 64-битный (amd64). 64-битная версия дает большую производительность, но доставляет больше проблем (таких как совместимость с драйверами). 32-битные системы существуют большее количество времени и имеют меньше проблем, что важно для начинающих пользователей.

Существуют два больших семейства Linux: Debian и Red Hat. Debian - это бесплатный open-source проект, который имеет несколько ветвей, наиболее популярная из которых Linux Ubuntu. Red Hat - это коммерчески распространяемая ОС, чьи "бесплатные" ветви называются Linux CentOS и Linux Fedora.

Red Hat Linux разрабатывается компанией Red Hat Inc. Red Hat Linux (либо ее "бесплатная" модификация CentOS) известна как "корпоративная" операционная система. Ее основное преимущество - "стабильность" (низкая доля системных ошибок). Однако эта стабильность достигается тщательным отбором ПО, которое устанавливается из коробки. Когда вы устанавливаете такую ОС для целей разработки на языке PHP, эта "стабильность" может стать проблемой, так как вы имеете доступ к некой старой (но "стабильной") версии PHP и другого ПО. В такую ОС не включают новое ПО, так что если вам нужно будет установить его, вам придется загрузить его откуда-нибудь, прочитать мануал, и вероятно (если вам не повезло) скомпилировать его самостоятельно.

Есть еще один дистрибутив Linux, который, по-мнению автора, больше подходит для нужд PHP разработки. Его название - Linux Ubuntu. Ubuntu разрабатывается компанией Canonical Ltd. Linux Ubuntu имеет две редакции: Desktop edition и Server edition. Ubuntu Desktop - это дистрибутив, содержащий графическую среду, в то время как Ubuntu Server edition позволяет работать лишь в консольном терминале. Для целей разработки на PHP рекомендуется использовать Desktop edition.

Canonical обычно выпускает новую версию Linux Ubuntu каждые 6 месяцев, в апреле и в октябре, а также LTS (long term support) версию каждые 2 года. Например, на момент написания данного текста последняя версия - Ubuntu 16.04 Xenial Xerus LTS (выпущенная в апреле 2016).

Не-LTS выпуски имеют короткий период поддержки (около 9 месяцев), но также имеют новейшую версию PHP из коробки. С другой стороны, LTS выпуски имеют более длинный период поддержки (5 лет), но несколько устаревшую версию PHP из коробки.

Для целей PHP разработки автор бы порекомендовал использовать последний выпуск Ubuntu Desktop, потому что он имеет последнюю версию PHP. Недостаток использования такого выпуска - это то, что вам придется обновлять Linux каждые 9 месяцев (когда истекает период поддержки). Если вам не нравится перспектива обновления каждые 9 месяцев, выберите выпуск LTS.

Для справки, таблица A.1 перечисляет версии PHP, доступные для установки из репозитария в различных дистрибутивах Linux:

Таблица A.1. Доступные для установки версии PHP в различных выпусках Linux
Выпуск Linux Версия PHP
Linux Ubuntu 16.04 Xenial Xerus LTS 7.0
Linux Ubuntu 15.10 Wily Werewolf 5.6
Linux Ubuntu 15.04 Vivid Vervet 5.6
Linux Ubuntu 14.10 Utopic Unicorn 5.5
Linux Ubuntu 14.04 Trusty Tahr 5.5

Как вы можете увидеть из таблицы выше, для целей разработки на ZF3, вам нужно будет установить Ubuntu 15.04 или выше.

В процессе выбора между 32-битной и 64-битной версиями системы, помните, что 64-битная версия Linux Ubuntu будет иметь больше проблем с совместимостью, чем 32-битная версия. Недостаток поддержки драйверов также может вызвать проблемы на 64-битной платформе.

Установка Apache и PHP

В современных дистрибутивах Linux вы можете запросто загрузить и установить ПО из централизованного репозитария. Репозитарий содержит так называемые пакеты. Пакет имеет имя (например, php , apache2 ), а также версию.

В общем, вы можете установить пакет одной командой. Однако эта команда (и название пакета) могут различаться в разных дистрибутивах Linux. Например, чтобы загрузить и установить пакеты в Debian-дистрибутивах Linux (например Ubuntu Linux), вы используете Advanced Packaging Tool (APT). В дистрибутивах от Red Hat (например Fedora или CentOS) вы используете YUM (менеджер пакетов RPM). Ниже приводятся детальные инструкции для этих операционных систем.

Debian или Linux Ubuntu

Прежде всего, рекомендуется обновить систему путем установки последних доступных обновлений. Чтобы сделать это, запустите следующие команды в терминале:

Команды выше запускают APT и устанавливают новейшие обновления системных пакетов. Команда sudo (расшифровывается как "Super User DO") позволяет запускать другую команду, apt-get в нашем случае, как системный администратор (root). Вы обычно используете sudo , когда вам нужно повысить привилегии, чтобы установить пакет или редактировать какой-нибудь файл конфигурации.

Команда sudo может запросить у вас пароль. Когда она запросит пароль, введите пароль, с которым вы вошли в систему, и нажмите Enter.

Далее, введите следующие команды:

Команды выше могут запросить ваше разрешение, когда вы устанавливаете пакет. Рекомендуется ответить Yes (нажать "y" и затем нажать Enter).

Fedora, CentOS или Red Hat Linux

Прежде всего, рекомендуется обновить систему путем установки последних доступных обновлений. Чтобы сделать это, введите в терминал следующую команду:

Команда выше запускает инструмент YUM и устанавливает новейшие обновления системных пакетов.

Далее, из командной строки запустите следующие команды:

Проверка установки веб-сервера

Корневая директория документов - это директория, где вы можете (по-умолчанию) хранить веб-файлы. Обычно корневая директория для документов имеет путь /var/www/html.

Чтобы удобно перемещаться по структуре директория и редактировать файлы, рекомендуется установить Midnight Commander (файл-менеджер и текстовый редактор). Чтобы установить Midnight Commander в Debian или Linux Ubuntu, запустите следующую команду:

sudo apt-get install mc

Следующая команда установит Midnight Commander в Fedora, CentOS или Red Hat Linux:

sudo yum install mc

После установки, запустите Midnight Commander командой mc . Вы также сможете редактировать текстовые файлы следующей командой:

mcedit /path/to/file

Если вам нужны административные привилегии, чтобы редактировать файл, припишите команду sudo к команде выше.

В файо phpinfo.php добавьте вызов PHP метода phpinfo() следующим образом:

Откройте файл в веб браузере. Стандартная страница с информацией о PHP должна появиться (см. рис. A.1 для примера).

Рис A.1. Информационная страница PHP

Рис A.1. Информационная страница PHP

Редактирование конфигурации PHP

В разных дистрибутивах Linux файлы конфигурации PHP могут находиться в разных путях. Чтобы редактировать файл конфигурации PHP в Debian или Linux Ubuntu, напечатайте следующее:

sudo mcedit /etc/php/7.0/apache2/php.ini

Запустите следующую команду, чтобы редактировать файл php.ini в Fedora, CentOS или Red Hat Linux:

sudo mcedit /etc/php.ini

Чтобы удобно искать внутри этого файла, нажмите F7 в окне редактора Midnight Commander и введите строку поиска (название параметра, который нужно найти).

Установите настройки часовой зоны (замените <your_time_zone> названием вашей часовой зоны, например, UTC или America/New_York ):

Установите параметры max_execution_time , upload_max_filesize и post_max_size , чтобы разрешить выгрузку на сервер файлов большого размера посредством POST. Например, установив для параметра upload_max_filesize значение 128M , вы разрешите выгрузку файлов размером до 128 мегабайт. Установив max_execution_time в нуль, вы разрешите PHP скрипту выполняться бесконечно долго.

Когда вы готовы, сохраните ваши изменения, нажав клавишу F2, а затем нажмите F10, чтобы выйти из редактора Midnight Commander.

Перезапуск Apache Web Server

sudo service apache2 restart

либо такой (в Fedora, CentOS или Red Hat):

Включение модуля mod_rewrite

Zend Framework 3 требует включенного модуля Apache mod_rewrite. Этот модуль используется для перезаписи запрашиваемых URL согласно некоторым правилам, перенаправляя пользователей сайта к другим URL.

В Debian или Ubuntu Linux

Для включения модуля mod_rewrite воспользуйтесь следующей командой:

Затем перезапустите веб-сервер Apache, чтобы применить изменения.

В Fedora, CentOS или Red Hat Linux

В этих дистрибутивах Linux mod_rewrite включен по умолчанию, так что никаких дополнительных действий не требуется.

Создание виртуального хоста Apache

Также Zend Framework 3 требует наличия виртуального хоста для вашего сайта. Термин "виртуальный хост" означает, что вы можете держать несколько веб-сайтов на одной машине.

Обратите внимание, что на данный момент вам не нужно создавать виртуальный хост, мы сделаем это в главе Zend Skeleton Application. Пока что вам нужно просто иметь представление о том, как создаются виртуальные хосты в различных дистрибутивах Linux.

В Debian или Ubuntu Linux

У вас есть образец виртуального хоста в /etc/apache2/sites-available/000-default.conf (см. ниже).

Вам нужно всего лишь изменить файл этого виртуального хоста и перезапустить Apache для применения изменений.

Вы также можете скопировать этот файл и создать другой виртуальный хост, если хотите, чтобы несколько веб-сайтов работали на одной машине. Например, чтобы создать файл виртуального хоста 001-vhost2.conf, напишите в командной строке следующее:

sudo cp 000-default.conf 001-vhost2.conf

В Fedora, CentOS или Red Hat Linux

Установка PHP-расширения XDebug

Чтобы иметь возможность отладки сайта, рекомендуем установить расширение XDebug. Это расширение позволяет заглянуть внутрь работающей программы, посмотреть переменные, переданные от клиента, пройтись по стеку вызовов и профилировать ваш PHP-код.

В Debian или Ubuntu Linux

Чтобы установить XDebug, воспользуйтесь следующей командой:

sudo apt-get install php-xdebug

Затем измените файл /etc/php/7.0/mods-available/xdebug.ini , добавив строчку:

sudo mcedit /etc/php/7.0/mods-available/xdebug.ini

Если вы планируете отлаживать ваш сайт с другого хоста, добавьте эти строки в конце файла:

Перезапустите сервер Apache для применения изменений. Затем откройте phpinfo.php в вашем браузере и найдите раздел XDebug (он должен выглядеть как на рисунке A.2)

Рисунок A.2. Данные XDebug

Рисунок A.2. Данные XDebug

В Fedora, CentOS или Red Hat Linux

В этих дистрибутивах Linux установка XDebug немного сложнее. Сначала установите пакет Xdebug следующей командой:

yum install php-pecl-xdebug

После установки нужно создать файл xdebug.ini в каталоге /etc/php.d:

В этом файле добавьте такую строчку:

Измените файл php.ini:

и, если вы планируете отладку с другого хоста, добавьте эти строки:

Перезапустите веб-сервев Apache для применения изменений. Затем проверьте phpinfo.php в вашем браузере. Если установка прошла успешно, вы увидите информацию, касающуюся XDebug.

Установка сервера баз данных MySQL

MySQL - это свободная реляционная система управления базами данных (СУБД), разрабатываемая компанией Oracle. MySQL является самой популярной СУБД среди используемых с PHP. В этой книге мы будем использовать именно ее.

Debian или Linux Ubuntu

Чтобы установить СУБД MySQL, наберите:

Команды выше установят соответственно серверный компонент MySQL, ее клиентный компонент и расширение MYSQL для PHP.

Fedora, CentOS или Red Hat Linux

Чтобы установить СУБД MySQL, наберите:

Команды выше установят соответственно серверный компонент MySQL, ее клиентный компонент и расширение MYSQL для PHP.

Выполните следующие команды, чтобы добавить сервер MySQL в автозагрузку и запустить его.

Настройка сервера БД MySQL

Во время установки сервера MySQL создается пользователь root. По умолчанию пользователь root не имеет пароля, вам нужно установить его вручную. Вам понадобится этот пароль для создания других пользователей БД MySQL.

Для подключения к серверу MySQL используйте следующую команду:

Вы увидите командную строку MySQL. Наберите в ней следующую команду и нажмите Enter (в команде ниже замените <your_password> выбранным вами паролем):

Query OK, 0 rows affected (0.00 sec)

Теперь необходимо создать новую БД, которая будет хранить таблицы. Для этого наберите:

Эта команда также создает пустую схему, которую мы заполним позднее.

Далее мы хотим создать еще одного пользователя БД с именем test_user , который будет использоваться сайтом для соединения с базой. Чтобы создать пользователя, воспользуйтесь следующей командой (не забудьте заменить <insert_your_password> выбранным паролем):

Эта команда создает пользователя 'test_user' и наделяет его всеми привилегиями на БД 'test_db'.

Данная статья не является чем то сверхестественным и подойдет скорее для тех, кто начинает изучать
Zend Framework. Так уж получилось что сам я начинал изучение с версии
1.7, но незадолго после начала познания данного инструмента меня забрали в армию, и год я программированием не занимался. Сейчас до возвращения в родные края остался месяц, а так же появилось свободное время.
В начале изучения какого либо инструмента, как я заметил по себе всегда хочется иметь его под рукой, чтобы сразу же при возможности
поковыряться а не перечитывать предварительно кучу документации.
Так у меня было с Zend Framework, когда он был еще версии 1.7
Пришлось перечиать несколько статей и пересоздать кучу каталогов,
чтобы настроить рабочий Zend Framework проект. Собственно данная статья является своего рода переводом статьи Zend Framework Quick Start | Create Your Project для версии Zend Framework 1.10.5
С некоторыми исправлениями и примечаниями.
Прочитав ее я думаю вы с легкостью создадите рабочий Zend Framework
проект и сразу же перейдете к изучению на практике.

В общем то, если все же кому то статья покажется по вкусу, возьмусь
за перевод всех статей серии Quick Start.

Установка Zend Framework

Для того, чтобы создать ваш проект, для начала вам необходимо скачать и распаковать Zend Framework.
Не буду вдаваться в подробности скачки, скажу лишь, что
он лежит где то здесь

Простейший путь, получить Zend Framework включая настроенный PHP — это установить Zend Server.
Zend Server имеет инсталляторы для таких операционных сисем, как: Mac OSX, Windows, Fedora Core, и Ubuntu.
Кроме того Zend Server так же имеет универсальный установочный пакет совместимый с большинством Linux дистрибьютивов.
После установки Zend Server'a, вы сможете найти Framework в каталоге /usr/local/zend/share/ на операционных системах MacOS X и Linux или в каталоге C:\Program Files\Zend\ZendServer\share\ZendFramework в операционной системе Windows.
Кроме того вы можете скачать последнюю версию Zend Framework в виде архива после чего распаковать его.

Создание проекта


Примечание: В каталоге где установлен Zend Framework находится подкаталог bin содержание сценарии:
zf.sh и zf.bat для Unix-based ОС и ОС Windows соответственно. Запомните абсолютный путь к этим сценариям.
Ниже будет использоваться команда zf. Для ее корректной работы замените путь к команде на абсолютный путь для вашей операционной системы. В Unix системах можно использовать alias.
Например так:
alias zf.sh=path/to/ZendFramework/bin/zf.sh
Если у вас возникли проблемы с использованием zf сценария, воспользуйтесь руководством

Откройте окно терминала (В Windows выпоните «Пуск»->«Выполнить»->«cmd») В консоли перейдите в каталог в котором вы хотите создать ваш проект. Затем, используйте сценарий zf для создания проекта.
Например так:
zf create project quickstart
В результате выполнения этой команды будет создан стандартный проект ZendFramework влючающий стандартные контроллеры и сценарии вида.
Дерево каталогов будет выглядеть следующим образом:
quickstart
|-- application
| |-- Bootstrap.php
| |-- configs
| | `-- application.ini
| |-- controllers
| | |-- ErrorController.php
| | `-- IndexController.php
| |-- models
| `-- views
| |-- helpers
| `-- scripts
| |-- error
| | `-- error.phtml
| `-- index
| `-- index.phtml
|-- library
|-- public
| |-- .htaccess
| `-- index.php
`-- tests
|-- application
| `-- bootstrap.php
|-- library
| `-- bootstrap.php
`-- phpunit.xml

Далее, если вы не указали путь к Zend Framework скриптам в include_path вашего php.ini файла, рекомендуется либо создать ссылку либо скопировать скрипты ZendFramework в каталог library/ вашего проекта.
В Unix системах это можно сделать следующим образом:

Теперь когда проект создан можно перейти к разбору таких понятий как
Загрузчик (Bootstraper), Конфигурация (Configuration), Контроллеры действий (Action Controllers) и Сценарии Вида (Views).

The Bootstraper (Загрузчик)


Класс Bootstraper определяет, какие ресурсы и компоненты будут инициализированны в вашем проекте. По умолчанию инициализирован Front Controller, который использует каталог application/controllers/ как директорию по умолчанию для поиска контроллеров действий (их мы рассмотрим позже) Данный класс выглядит примерно следующим образом:
  1. // application/Bootstrap.php
  2. class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
  3. >

Configuration (Конфигурация)


На данный момент ваш проект на Zend Framework уже более менее сконфигурирован. Однако в будующем вам в любом случае будет необходимо конфигурировать ваше приложение на свой вкус. Основной файл конфигурации по умолчанию хранится в файле: application/configs/application.ini и содержит основные директивы настройки вашей PHP среды (например включение и отклюение отчета об ошибках). Помимо этого в данном файле указан
путь к классу начальной загрузки (Bootstrap), и путь к контроллерам действий (Action Controllers).
Выглядит данный файл следующим образом:
; application/configs/application.ini
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 0
[staging : production]
[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1

Вот несколько вещей которые необходимо знать о файле конфигурации. При использовании ini конфигурационного файла вы можете использовать константы. APPLICATION_PATH — это константа. К тому же в данном файле определено несколько секций: production, staging, testing, и development. Последние три секции наследуют настройки из секции 'production'. Данное разбиение на категории хороший путь того, чтобы гарантировать доступность настроек на каждом этапе разработки.

Контроллеры действий (Action Controllers)

  1. // application/controllers/IndexController.php
  2. class IndexController extends Zend_Controller_Action
  3. public function init()
  4. /* Initialize action controller here */
  5. >
  6. public function indexAction()
  7. // action body
  8. >
  9. >

ErrorController созданный по умолчанию выглядит так:

Необходимо отметить, что IndexController не имеет фактически ни какого кода, в то время как ErrorController ссылается на представление вида «view».

Сценарии вида (views)


Сценарии вида в Zend Framework по умолчанию используют простой php синтаксис. Сценарии вида находятся в каталоге application/views/scripts/, где они распределены по каталогам в зависимости от контроллера действия. Так например в нашем проекте существуют контроллеры IndexController и ErrorController, соответственно сценарии вида для них находятся в подкаталогах index/ и error/ В данных подкаталогах содержатся файлы типа *.phtml, которые являются сценариями вида для действий. Так по умолчанию мы имеем сценарии вида: index/index.phtml и error/error.phtml. Для Index контроллера и Error Контроллера соответственно.
Сценарии вида могут содержать какой угодно текст. Кроме того вы можете использовать php теги <?php ?> для вставки в них PHP директив.
Так выглядит сценарий вида для действия index контроллера indexController:

А так выглядит сценарий вида для контроллера ошибок (Error Controller)
Заметим что в нем присутствуют некоторые PHP инструкции.

  1. <!-- application/views/scripts/error/error.phtml -->
  2. <! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" ;
  3. " http: // www . w3 . org / TR / xhtml1 / DTD / xhtml1-strict . dtd >
  4. < html xmlns ="http://www.w3.org/1999/xhtml" >
  5. < head >
  6. < meta http-equiv ="Content-Type" content ="text/html; charset=utf-8" />
  7. < title > Zend Framework Default Application </ title >
  8. </ head >
  9. < body >
  10. < h1 > An error occurred </ h1 >
  11. < h2 ><? php echo $ this- > message ? ></ h2 >
  12. <? php if ( 'development' == $ this- > env): ? >
  13. < h3 > Exception information: </ h3 >
  14. < p >
  15. < b > Message: </ b > <? php echo $ this- > exception- > getMessage() ? >
  16. </ p >
  17. < h3 > Stack trace: </ h3 >
  18. < pre ><? php echo $ this- > exception- > getTraceAsString() ? >
  19. </ pre >
  20. < h3 > Request Parameters: </ h3 >
  21. < pre ><? php echo var_export ($ this- > request- > getParams(), 1) ? >
  22. </ pre >
  23. <? php endif ? >
  24. </ body >
  25. </ html >

Создание Виртуального Хоста (Virtual Host)

Для создания своего проекта вы должны сначала скачать и распаковать Zend Framework.

3.2.1. Установка Zend Framework

Простейшим способом получить Zend Framework вместе с PHP является установка Zend Server. Zend Server обладает инсталяторами для Mac OSX, Windows, Fedora Core, and Ubuntu, а так же универсальный пакет установки, который совместим с большинством дистрибутивов линукса.

После того как вы установили Zend Server, фреймворк можно найти в папке /usr/local/zend/share/ZendFramework в системах Mac OSX или Linux, и C:\Program Files\Zend\ZendServer\share\ZendFramework в Windows. Переменная include_path уже будет содержать путь к Zend Framework.

Альтернативный способ заключается в скачке последней версии Zend Framework и распаковки содержимого, запомните путь куда вы распаковали.

Вы можете добавить путь к папке library/ архива в переменную include_path файла php.ini .

Это все! Zend Framework Установлен и готов к использованию.

3.2.2. Создай свой проект

При установке Zend Framework вы обнаружите папку bin/ , содержащую скрипты zf.sh и zf.bat для unix- и windows-пользователей соответственно. Запомните абсолютный путь к скрипту.

Используйте абсолютный путь к zf.sh либо zf.bat везде, где вы встретите ссылку на скрипт. Вы можете использовать алиасы на unix подобных системах: alias zf.sh=path/to/ZendFramework/bin/zf.sh .

Если у вас возникли проблемы с утилитой командной строки zf , пожалуйста, обратитесь к руководству.

Откройте терминал (в Windows, Пуск -> выполнить , наберите cmd ). Перейдите к папке, где бы вы хотели начать свой проект. Затем, используя путь к скрипту, наберите:

Выполнение этой команды создаст базовую структуру, включая начальные контроллеры и представления. Дерево выглядит следующим образом:

Если вы все еще не добавили Zend Framework в include_path , мы рекомендуем скопировать Zend Framework в папку library/ либо создать символическую ссылку на нее. На unix-подобных системах это будет выглядеть следующим образом:

На Windows системах это будет легче сделать из проводника.

Теперь когда проект создан, основные вещи для понимания это загрузчик, конфигурация, контроллеры действий, и представления.

3.2.3. Загрузчик (Bootstrap)

Класс Загрузчика определяет какие ресурсы и компоненты инициализировать. По-умолчанию, инициализируется Front Controller, в качестве папки по умолчанию для контроллеров используется application/controllers/ , где определяются контроллеры действий (об этом далее). Класс выглядит следующим образом:

Как видите, не так много нужно для начала.

3.2.4. Конфигурация (Configuration)

Несколько вещей, которые стоит отметить. Во-первых, когда используете конфигурацию в стили ini, можете ссылаться напрямую к константам; APPLICATION_PATH на самом деле константа. Также отметьте, что определены несколько секций: production, staging, testing, и development. Последние три наследуют настройки от окружения "production". Это полезный способ организовать конфигурацию, чтобы убедиться что используются правильные настройки на каждой стадии разработки приложения.

3.2.5. Контроллеры действий (Action Controllers)

Ваши action controller'ы это рабочие процессы приложения, они делают работу по преобразованию ваших запросов к соответсвующим моделям и представлениям.

Контроллеры действий должны иметь один или более методов, оканчивающихся словом "Action"; эти методы могут быть затем вызваны через веб. По-умолчанию, URL'ы в Zend Framework следуют схеме /controller/action , где "контроллер" связывается с именем контроллера действий (исключая суффикс "Controller") и "дествие" связывается с методом (исключая суффикс "Действие").

Обычный IndexController выглядит так:

А обычный ErrorController выглядит так:

Вы заметите, что (1) IndexController не содержит настоящего кода, и (2) the ErrorController создают ссылку на свойство "представления". Мы подходим к нашей следующей теме.

3.2.6. Представления (Views)

Представления в Zend Framework написаны на чистом старом PHP. Скрипты представлений расположены в application/views/scripts/ , где в дальнейшем они упорядочиваются по именам контроллеров. В нашем случае мы имеем IndexController и ErrorController , и также мы имеет соответсвующие index/ и error/ папки внутри нашей папки scripts. Внутри этих папок вы найдете и создадите скрипты представлений, которые соответсвуют каждому контроллеру действий; по-умолчанию у нас имеются скрипты index/index.phtml и error/error.phtml .

Скрипты представлений могут содержать любую разметку, какую захотите, и использовать открывающий <?php и закрывающий ?> тэги для вставки инструкций PHP.

Вот что содержится по-умолчанию в скрипте index/index.phtml :

Скрипт error/error.phtml более интересен, так как он использует несколько условий PHP:

3.2.7. Checkpoint

На данный момент вы должны быть в состоянии запустить свое приложение на Zend Framework. Создайте виртуальный хост на веб сервере, и укажите папку public/ в качестве document root. Убедитесь что ваше имя хоста присутствует в вашем DNS или файле hosts, затем наберите в браузере адрес. Вы должны увидеть страницу приветствия.

Читайте также: