WikiDer > Zend Framework
Эта статья может потребоваться переписан соответствовать требованиям Википедии стандарты качества. (Апрель 2017 г.) |
Разработчики) | Zend Technologies |
---|---|
изначальный выпуск | 3 марта 2006 г.[1] |
Стабильный выпуск | 3.0.0[2] / 28 июня 2016 г. |
Репозиторий | Zend репозиторий |
Написано в | PHP 7 |
Операционная система | Кроссплатформенность |
Лицензия | Новая лицензия BSD |
Интернет сайт | рамки |
Zend Framework (ZF) является Открытый исходный код, объектно-ориентированный каркас веб-приложений реализовано в PHP 7 и под лицензией Новая лицензия BSD.[3] Фреймворк - это в основном набор профессиональных PHP[4]пакеты на основе.[5] Фреймворк использует различные пакеты, используя Composer как часть своих менеджеров зависимостей пакетов; некоторые из них PHPUnit для тестирования всех пакетов Travis CI для непрерывных служб интеграции. Zend Framework предоставляет пользователям поддержку Контроллер представления модели (MVC) в сочетании с решением Front Controller.[6] Реализация MVC в Zend Framework имеет пять основных областей. В маршрутизатор и функции диспетчера, чтобы решить, какой контроллер запустить на основе данных из URL, и функции контроллера в сочетании с моделью и представлением для разработки и создания окончательной веб-страницы.[5]
17 апреля 2019 года было объявлено[7] что фреймворк переходит в проект с открытым исходным кодом, размещенный Linux Foundation называться ламинами.
Лицензия
Zend Framework под лицензией Инициатива открытого исходного кода (OSI) -утверждено Новая лицензия BSD. Для ZFv1 все участники кода должны подписать Лицензионное соглашение участника (CLA) на основе Фонд программного обеспечения ApacheС CLA. Политика лицензирования и взносов была разработана для предотвращения проблем с интеллектуальной собственностью для коммерческий Пользователи ZF, по словам Энди Гутманса из Zend.[8] ZF2 и более поздние версии не содержат CLA.[9] Также для структуры доступна долгосрочная поддержка (долгосрочная поддержка или LTS) на общую продолжительность 3 года.
Компоненты Zend Framework и управление версиями
Начиная с Zend Framework версии 2.5, компоненты разделяются на пакеты с независимыми версиями, а zendframework / zendframework конвертируется в мета-пакет Composer. Компоненты каркаса, представленные после разделения, не добавляются в метапакет.
Хотя версия выпуска метапакета zendframework / zendframework остается на уровне 3.0.0, он проинструктирует Composer установить последние совместимые версии компонентов платформы в соответствии с семантическим управлением версиями. Таким образом, компонент zend-mvc будет установлен в его текущей версии 3.1.1, zend-servicemanager в версии 3.3.0 и zend-form в версии 2.10.2.
Zend Framework включает в себя следующие компоненты:[10]
Компонент | Описание |
---|---|
Аутентификация | Аутентифицируйте пользователей с помощью различных адаптеров и предоставьте аутентифицированную личность вашему приложению. |
Штрих-код | Программно создавайте и отображайте штрих-коды как изображения или в PDF-файлы. |
Кеш | Реализация кеширования с различными вариантами хранения, а также кодифицированные стратегии кэширования для обратных вызовов, классов и вывода. |
Капча | Создавайте и проверяйте CAPTCHA, используя Figlets, изображения, ReCaptcha и многое другое. |
Код | Расширения PHP Reflection API, статическое сканирование кода и генерация кода. |
Установщик компонентов | Плагин Composer для внедрения модулей и поставщиков конфигурации в конфигурацию приложения. |
Конфиг | Чтение и запись файлов конфигурации. |
Агрегатор конфигураций | Агрегировать и объединять конфигурацию из различных источников. |
Консоль | Создавайте консольные приложения, используя синтаксис getopt или маршрутизацию, с подсказками |
Склеп | Надежные инструменты криптографии и хеширования паролей. |
БД | Уровень абстракции базы данных, абстракция SQL, абстракция набора результатов и реализации RowDataGateway и TableDataGateway. |
Отлаживать | Безопасно выгружайте отладочную информацию в HTML. |
DI | Автоматическая инъекция зависимостей и диспетчер экземпляров. |
Diactoros | Реализации сообщений HTTP PSR-7. |
ДОМ | Запрашивайте документы HTML и XML с помощью селекторов XPath или CSS. |
Беглец | Надежно и безопасно избегайте HTML, атрибутов HTML, JavaScript, CSS и URL-адресов. |
Менеджер по корпоративным мероприятиям | Реализуйте события, слоты сигналов, аспекты и наблюдателей! |
Выразительный | Промежуточное ПО PSR-7 за считанные минуты. |
Подача | Потребляйте и создавайте каналы Atom и RSS, а также взаимодействуйте с Pubsubhubbub. |
Файл | Найдите файлы классов PHP. |
Фильтр | Программная фильтрация и нормализация данных и файлов. |
Форма | Проверяйте и отображайте простые и сложные формы, преобразовывая формы в бизнес-объекты и наоборот. |
HAL для ПСР-7 | Язык гипертекстовых приложений (HAL) для PSR-7. |
HTTP | Абстракции HTTP-сообщения и заголовка, а также реализация HTTP-клиента. (Не реализация PSR-7.) |
Гидратор | Сериализуйте объекты в массивы и наоборот. |
InputFilter | Нормализация и проверка входных наборов из Интернета, API, интерфейса командной строки и т. Д., Включая файлы. |
Интернационализация | Предоставляйте переводы для вашего приложения, а также фильтруйте и проверяйте интернационализированные значения. |
JSON | Де / сериализовать JSON в PHP, включая выражения JavaScript. |
Сервер JSON-RPC | Реализация JSON-RPC для PHP. |
LDAP | Выполнять операции LDAP, включая привязку, поиск и изменение записей в каталоге LDAP. |
Загрузчик | Стратегии автозагрузки и загрузки плагинов. |
Журнал | Надежный составной регистратор с фильтрацией, форматированием и поддержкой PSR-3. |
Почта | Анализируйте, создавайте, храните и отправляйте сообщения электронной почты, используя различные протоколы хранения и транспортировки. |
Математика | Создавайте криптографически безопасные псевдослучайные числа и управляйте большими целыми числами. |
объем памяти | Управляйте данными в среде с ограниченным объемом памяти. |
MIME | Создавайте и анализируйте сообщения и части MIME. |
Менеджер модуля | Модульная система приложений для приложений zend-mvc. |
MVC | Управляемый событиями уровень MVC Zend Framework, включая приложения, контроллеры и плагины MVC. |
Интеграция MVC-консоли | Интеграция между zend-mvc и zend-console. |
Интеграция MVC-i18n | Интеграция между zend-mvc и zend-i18n. |
плагин fileprg () | Плагин Post / Redirect / Get с обработкой загрузки файлов для контроллеров zend-mvc. |
плагин flashmessenger () | Плагин для создания и отображения флэш-сообщений через контроллеры zend-mvc. |
плагин identity () | Плагин для получения текущей аутентифицированной личности в контроллерах zend-mvc. |
плагин prg () | Плагин Post / Redirect / Get для контроллеров zend-mvc. |
Навигация | Управляйте деревьями указателей на веб-страницы для построения систем навигации. |
Пагинатор | Разбивайте коллекции данных из произвольных источников. |
ACL | Создавайте, управляйте и запрашивайте списки контроля доступа. |
RBAC | Предоставление и запрос средств управления доступом на основе ролей для вашего приложения. |
Подробности проблемы | PSR-7 Сведения о проблеме для ответов HTTP API и промежуточного программного обеспечения. |
Индикатор | Создавайте и обновляйте индикаторы выполнения в разных средах. |
Мост PSR-7 | PSR-7 <-> преобразование сообщений zend-http. |
Маршрутизатор | Гибкая система маршрутизации для HTTP и консольных приложений. |
Сериализатор | Сериализуйте и десериализуйте структуры PHP для различных представлений. |
Сервер | Создавайте RPC-серверы на основе отражения. |
Менеджер по обслуживанию | Заводской контейнер для внедрения зависимостей |
Интеграция ServiceManager-Di | интеграция zend-di для zend-servicemanager |
Сессия | Объектно-ориентированный интерфейс для сессий и хранилища PHP. |
МЫЛО | Создавайте, обслуживайте и получайте доступ к приложениям SOAP, а также анализируйте и генерируйте WSDL. |
Stdlib | Расширения SPL, утилиты для работы с массивами, обработчики ошибок и многое другое. |
Рассудительность | Основа промежуточного программного обеспечения PSR-7 для построения и распределения конвейеров промежуточного программного обеспечения. |
Тег | Манипулируйте и взвешивайте тегируемые элементы, а также создавайте облака тегов. |
Тест | Инструменты для облегчения модульного тестирования приложений zend-mvc. |
Текст | Создавайте FIGlets и текстовые таблицы. |
URI | Объектно-ориентированный интерфейс для URI с возможностями проверки. |
Валидатор | Классы валидации для широкого диапазона доменов и возможность связывать валидаторы в цепочку для создания сложных критериев валидации. |
Посмотреть | Гибкий уровень представления, поддерживающий и предоставляющий несколько слоев представления, помощников и многое другое. |
XML-RPC | Полнофункциональные реализации сервера и клиента XML-RPC. |
XML2JSON | Конвертируйте XML-документы в JSON. |
Установка
Официально поддерживаемый метод установки - через Композитор менеджер пакетов.
Zend Framework предоставляет мета-пакет, который включает 61 компонент, но рекомендуемый способ - индивидуальная установка необходимых компонентов инфраструктуры. Composer разрешит и установит все дополнительные зависимости.
Например, если вам нужен пакет MVC, вы можете установить его с помощью следующей команды:
$ композитору требуется zendframework / zend-mvc
Полный список компонентов доступен в документации Zend Framework.[10]
Анатомия Zend Framework
Zend Framework следует подходу конфигурации, а не соглашению, и не навязывает какую-либо конкретную структуру приложения. Доступны скелетные приложения для zend-mvc и zend-expressive, которые предоставляют все необходимое для запуска приложений и служат хорошей отправной точкой.
Рекомендуемая структура каталогов приложения MVC
ZendSkeletonApplication, приложение-скелет, использующее системы уровней и модулей Zend Framework MVC, можно установить с помощью:
$ composer create-project zendframework / скелет-приложение <путь-проекта>
Он создаст подобную файловую структуру:
<название проекта> / ├── config / │ ├── autoload / │ │ ├── global.php│ │ └── local.php.dist│ ├── application.config.php│ └── modules.config .php├── data / │ └── cache / ├── module / ├── public / │ └── index.php├── vendor / ├── composer.json├── composer.lock└── phpunit.xml.dist
Каталог config / имеет конфигурации для всего приложения. Каталог module / содержит локальные модули, которые фиксируются вместе с application. vendor / содержит код поставщика и другие модули, управляемые независимо от приложения, содержимое папки обычно управляется Composer.
Zend Framework модуль имеют только одно требование: класс модуля существует в пространстве имен модуля и может быть загружен автоматически. Класс модуля предоставляет приложению логику настройки и инициализации. Рекомендуемая структура модуля следующая:
<имя модуля> ├── config / │ └── module.config.php├── src / │ └── Module.php├── test / ├── view / ├── composer.json└── phpunit. xml.dist
Каталог config / содержит конфигурации модулей, каталог src / содержит исходный код модуля, как определено в ПСР-4 стандарт автозагрузки, каталог test / содержит модульные тесты для модуля, а каталог view / содержит сценарии просмотра.
Создание структуры проекта
Zend framework поддерживает ввод из командной строки для создания структуры каталогов. Мы будем использовать командную строку интерфейс чтобы начать создание структуры каталогов для нашего проекта. Это даст вам полное представление о структуре каталогов. Интерфейс поддерживает и предоставляет интерфейс Zend_Tool, предоставляющий целый ряд командных функций.
- Откройте интерфейс командной строки и измените каталог hellozend.
- Пользователи Windows вводят: binzf при создании проекта
- Пользователи Linux / Mac введите: binzf.sh создать проект
Эта процедура создаст проект Zend Framework в указанном вами месте. После запуска Zend_Toll будет создан базовый скелет приложения.[11] Это создаст не только структуру каталогов, но и все основные элементы Фреймворк MVC.[11] Чтобы получить Apache функциональные возможности настройки виртуального хоста будут такими:[11]
Слушать 8080 *: 8080>DocumentRoot / Пользователь / keithpope / Сайты / hellozend / public</VirtualHost>
Созданная базовая структура каталогов будет примерно такой же, как упомянута в вышеупомянутой структуре каталогов Zend Framework с аналогичным объяснением. Еще один аспект Zend-Tool, который автоматически инициализируется во время установки, - это загрузка. Здесь основная цель - инициализировать запрос страницы разработчиком. Основная запись здесь, созданная Zend Framework, - это файл индекса. Индексный файл предоставляет функцию для обработки запроса пользователя. Это основная точка входа для всех запросов. Ниже показаны функциональные возможности.[11]
- Application-path: определяет путь к каталогу приложения
- Application_Env: изменяет поведение приложения в зависимости от различных факторов, таких как способ использования приложения.
- getenv (): проверяет системную среду.
- Инициализировать приложение Zend-Application: включить Zend-Application и создать его экземпляр.
- Вызов метода bootstrap () вместе с запуском метода run () MVC.
Обычно Zend-Tool создает много важных структур каталогов. Эта система построена на Быстрая разработка приложений технологии. Как общее правило поддержки, фреймворк фокусируется на кодировании и структурах проекта, а не на более мелких частях.[12]
- Структура каталога проекта
- Контроллеры
- Действия
- Взгляды
- Файл начальной загрузки
Контроллеры
Контроллер - это основной вход в приложение Zend Framework.[13] Обработчик фронт-контроллера является основным центром приема запросов и выполнения точных действий в соответствии с запросами команд. Весь процесс запроса и реагирования - это маршрутизация и диспетчеризация (что в основном означает вызов правильных методов в классе), которые определяют функциональность кода.[13] Это реализуется через интерфейс Zend_Controller_Router_-.[13] Функциональность маршрутизатора заключается в том, чтобы определить, какие действия необходимо выполнить, а диспетчер, наоборот, выполняет эти запрошенные действия.[13] Контроллер в Zend Framework связан с разнообразным массивом структурных каталогов, что обеспечивает поддержку эффективной маршрутизации.[13] Основной точкой входа и командным контроллером является Zend_Controller_Front, он работает как основа, которая делегирует полученную и отправленную работу. Запрос формируется и инкапсулируется с экземпляром запроса Zend Controller. HTTP, как поставщик доступа к HTTP Запросы.[13] HTTP содержит все суперглобальные структуры ($ _GET, $ _POST, $ _COOKIE, $ _SERVER и $ _ENV) с соответствующими путями. Кроме того, контроллер также обеспечивает getParam () функции, которые позволяют собирать запрошенные переменные.
Действия
Действия - важные функции. Контроллеры не работают без действий. Для этой цели мы создаем другой метод, к имени которого добавлено действие, и фронт-контроллер автоматически распознает его как действие.[11] В акции есть в этом(), который показывает его частный характер и недоступен никому.[11] Следующие команды выполняются, чтобы Zend_Tool мог создать действие за нас.[11] Благодаря использованию стандартного диспетчера все функции называются по имени действия и к ним добавляется слово «Действие».[13] Это приводит к классу действия контроллера, содержащему такие методы, как indexAction (), viewAction (), editAction () и deleteAction ().
Пользователи Windows:
binzf.bat создать действия с индексом
bin / zf.sh создать действие по индексу
Пример форм и действий:[14]
пространство имен АльбомФорма;использовать ZendFormForm;учебный класс АльбомФорма расширяет Форма{ общественный функция __construct($ name = ноль) { // мы хотим игнорировать переданное имя родитель::__construct('альбом'); $ это->Добавить(множество( 'имя' => 'я бы', 'тип' => 'Скрытый', )); $ это->Добавить(множество( 'имя' => 'заглавие', 'тип' => 'Текст', 'опции' => множество( 'метка' => 'Заголовок', ), )); $ это->Добавить(множество( 'имя' => 'художник', 'тип' => 'Текст', 'опции' => множество( 'метка' => 'Художник', ), )); $ это->Добавить(множество( 'имя' => 'Разместить', 'тип' => 'Представлять на рассмотрение', 'атрибуты' => множество( 'ценить' => 'Идти', 'я бы' => 'submitbutton', ), )); } // источник: Руководство по Zend Framework }
Стандартный роутер
Стандартный маршрутизатор - важный инструмент переднего контроллера. Здесь принимаются основные решения в том, какой модуль, контроллер и действие запрашиваются.[11] Все они здесь обрабатываются. Ниже приводится структура по умолчанию.
- Модуль
- Контроллер
- Действия
Запрос следует шаблону, первая информация берется из URL конечная точка HTTP. URI - это конечная точка запроса. URL структура выглядит следующим образом:[11] http://domain.com/moduleName/controllerName/actionName
Пример кода маршрутизатора по умолчанию:[15]
// Предполагая следующее:$ ctrl->setControllerDirectory( множество( 'дефолт' => '/ путь / к / по умолчанию / контроллеры', 'Новости' => '/ путь / к / новости / контроллеры', 'блог' => '/ путь / к / блогу / контроллерам' ));
Только модуль:
http: // пример / новости
модуль == новости
Неверный модуль соответствует имени контроллера:
http: // пример / foo
контроллер == foo
Модуль + контроллер:
http: // пример / блог / архив
модуль == блог
контроллер == архив
Модуль + контроллер + действие:
http: // пример / блог / архив / список
модуль == блог
контроллер == архив
действие == список
Модуль + контроллер + действие + параметры:
http: // пример / блог / архив / список / сортировка / альфа / дата / desc
модуль == блог
контроллер == архив
действие == список
sort == alpha
date == desc
Утилита методы
Zend Framework также предоставляет некоторые служебные методы. Ниже приведены некоторые служебные методы, представленные в платформе.[11]
- _вперед()
- он используется для призыва к действию
_вперед{$ действие, $ контроллер = ноль, $ модуль = ноль, множество $ params = ноль}
- $ действия
- строка, требуется действие
- $ контроллер
- необязательный строковый параметр и это место, где находится контроллер.
- $ модуль
- строка, имеет модуль, в котором у нас есть контроллер.
- $ params
- массив, пользовательский параметр
Другой метод - это служебный метод перенаправления. Это противоположно вышеупомянутому методу _forward ().[11] _redirect () выполняет HTTP в перенаправлении при создании нового запроса.[11] Методы _redirect () принимают два аргумента, а именно $ url и $ options.
Кроме того, помощники действий также являются способом предоставления дополнительных функций в рамках. Помощники действий полезны, когда необходимо обеспечить функциональность между контроллерами.[11]
//application/controllers/IndexController.phpобщественный функция в этом(){ $ это->_helper->viewRenderer->setNoRender();}
На этапе инициализации IndexController и ContactController вызывается viewReader и флаг noRender вызывается для объекта представления.[11] Отсутствие этого процесса создает ошибку в нашем приложении.
Просмотр каталогов
Zend Framework обеспечивает структуру представления для нашего проекта и контроллера, а действия автоматически предоставляются нашему приложению. Внутри папки просмотра Zend Framework мы наблюдаем следующие папки.[11]
- Посмотреть
- Помощники
- Скрипты
- Контакты
- ошибки
- показатель
Чтобы создать представление, мы следуем:[11]
<!-- application/views/scripts/index/index.phtml --><html><голова><заглавие><Привет Zend</заглавие></голова><тело><Здравствуй>Привет Зенд</Здравствуй><п>Привет от Zend Framework</п></тело></html>
Посмотреть образец:[16]
// https://framework.zend.com/manual/2.4/en/modules/zend.view.quick-start.htmlпространство имен FooController;использовать ZendMvcControllerAbstractActionController;использовать ZendViewModelViewModel;учебный класс BazBatController расширяет AbstractActionController{ общественный функция doSomethingCrazyAction() { $ просмотр = новый ViewModel(множество( 'сообщение' => 'Привет, мир', )); $ просмотр->setTemplate('фу / баз-летучая мышь / делать что-то сумасшедшее'); возвращаться $ просмотр; }}
Спонсор и партнеры
Zend Technologies, соучредителем PHP основные участники Энди Гутманс и Зеев Сураски, является корпоративным спонсором Zend Framework.[17] Технологические партнеры включают IBM,[18] Google,[19] Microsoft,[20] Adobe Systems,[21] и StrikeIron.[22]
Функции
Возможности Zend Framework включают:[23]
- Все компоненты полностью объектно-ориентированы на PHP 5 и совместимы с E_STRICT, что помогает в разработке тестов и написании коды без ошибок и без сбоев.[24]
- Использование по желанию архитектура со слабосвязанными компонентами и минимальными взаимозависимостями
- Расширяемый MVC реализация с поддержкой макетов и шаблонов на основе PHP по умолчанию
- Поддержка нескольких систем баз данных и поставщиков, включая MariaDB, MySQL, Oracle, IBM DB2, Microsoft SQL Server, PostgreSQL, SQLite, и Informix Dynamic Server
- Составление и доставка электронной почты, получение через mbox, Maildir, POP3 и IMAP4
- Гибкая подсистема кеширования с поддержкой многих типов бэкэндов, таких как объем памяти или файловая система.
- С помощью удаленный вызов процедур (RPC) и REST (Изобразительное State Transfer), Zend Apigility помогает разработчикам создавать API, аутентификацию API, документация по API, простая модификация[25]
Разработка приложений
Приложения Zend Framework могут работать на любом стеке PHP, отвечающем техническим требованиям. Zend Technologies предоставляет стек PHP, Zend Сервер (или Zend Server Community Edition), который рекламируется как оптимизированный для запуска приложений Zend Framework. Zend Server включает Zend Framework в свои установщики вместе с PHP и все необходимые расширения. Согласно Zend Technologies, Zend Server обеспечивает повышенную производительность для PHP и особенно приложений Zend Framework за счет ускорения кода операции и нескольких возможностей кэширования, а также включает средства мониторинга и диагностики приложений.[26] Zend Studio - это IDE, которая включает функции, специально предназначенные для интеграции с Zend Framework. Он обеспечивает представление MVC, генерацию кода MVC на основе Zend_Tool (компонент Zend Framework), средство форматирования кода, автозавершение кода, поддержку параметров и многое другое.[27] Zend Studio не является бесплатным программным обеспечением, тогда как Zend Framework и Zend Server Community Edition бесплатны. Zend Server совместим с распространенными инструментами отладки, такими как Xdebug. Другие разработчики могут захотеть использовать другой стек PHP и другую IDE, например Eclipse PDT который хорошо работает вместе с Zend Server. Предварительно настроенная бесплатная версия Eclipse PDT с Zend Debug доступен на веб-сайте Zend.
Код, документация и стандарты тестирования
Код, добавляемый в Zend Framework, зависит от строгого кода, документация, и стандарты тестирования. Весь код должен соответствовать стандартам кодирования ZF и модульные тесты должно достигать 80% покрытие кода прежде, чем соответствующий код может быть перемещен в ветку выпуска.[28]
Простой облачный API
22 сентября 2009 г. Zend Technologies объявил[29] что он будет работать с технологическими партнерами, включая Microsoft, IBM, Rackspace, Nirvanix, и GoGrid вместе с сообществом Zend Framework для разработки общего API для облако прикладные услуги, названные Простой облачный API. Этот проект является частью Zend Framework и будет размещен на веб-сайте Zend Framework,[30] но отдельный сайт под названием simplecloud.org[31] был запущен для обсуждения и загрузки самых последних версий API. Simple Cloud API и несколько облачных сервисов включены в Zend Framework. Адаптеры к популярным облачным сервисам достигли производственного качества.
Привет, мир: файл за файлом
Чтобы создать программу Hello World, нужно выполнить несколько шагов, в том числе:
- Сначала создайте четыре файла в структуре каталогов. Эти файлы представляют собой файл начальной загрузки, файл управления Apache (.htaccess), файл контроллера и контроллер представления для представления.[13]
- Во-вторых, необходимо разработать копию Zend Framework. По мере роста сложности требуется дополнительный код, который будет обеспечивать функциональность, относительно небольшой и фокусируется на преимуществах MVC система.[13] Что касается процесса более подробно, то файл начальной загрузки - это инициализация в той или иной форме.
Затем необходимо убедиться, что среда правильная и нет ошибок, а затем установить дату и время для функции отслеживания.[13] Чтобы установить дату и время, можно выполнить множество процедур; например, может быть вызван метод data_default_timezone_set (), и Zend предполагает, что каталог по умолчанию будет включать путь phd.[13] Zend Framework не зависит от какого-либо конкретного файла, но в этом случае полезны вспомогательные классы. Вот несколько примеров:
- Zend_Loader :: loadClass () здесь основная цель - исправить файл для указанного имени класса.
- После этого подчеркивания преобразуются в структуры, специфичные для каталога.[13] В результате строки кода Zend_Loader :: loadClass ('Zend_Controller_Front'); и include_once 'Zend / Controller / Front.php'; показать похожие результаты.
- Zend_Debug :: dump () выполняет функции с точки зрения отладочной информации и ориентирован на форматированный вывод var_dump ().[13] Наконец, начальная загрузка запускает передний контроллер и инициализирует его. Шаблон проектирования, используемый Zend_Controller_Front, является дизайном Singleton, а getInstance () используется для получения единственного экземпляра.[13]
Текущее развитие
Zend Framework 3.0 был выпущен 28 июня 2016 года. Он включает новые компоненты, такие как сервер JSON RPC, преобразователь XML в JSON, функциональность PSR-7 и совместимость с PHP 7. Zend Framework 3.0 работает до 4 раз быстрее, чем Zend Framework 2, и пакеты были разъединены, чтобы обеспечить большее повторное использование.[32] Разработчики Zend Framework активно поощряют использование Zend Framework версии 3.x.Заявленный срок службы Zend Framework 1 - 28 сентября 2016 г., а для Zend Framework 2 - 31 марта 2018 г. Первый разрабатываемый релиз Zend Framework 2.0 был выпущен 6 августа 2010 года.[33] Изменения, внесенные в этот выпуск: удаление require_once операторы, миграция в пространства имен PHP 5.3, отремонтированный набор тестов, переписанный ZendSession, и добавление нового ZendStdlib. Второй выпуск в разработке состоялся 3 ноября 2010 года.[34] Первый стабильный выпуск Zend Framework 2.0 был выпущен 5 сентября 2012 года.[35]
Смотрите также
Рекомендации
- ^ "Архивы". Zend Framework. Получено 1 мая, 2013.
- ^ "zendframework / zendframework". GitHub. Получено 17 мая, 2017.
- ^ «Введение в Zend Framework». Справочное руководство программиста ZF. Получено 2009-02-12.
- ^ «Учебник по PHP 5». www.w3schools.com. Получено 2017-02-20.
- ^ а б Компания, Zend, Rogue Wave. «Zend Framework - О программе». framework.zend.com. Получено 2017-02-05.
- ^ Супаартагорн, К. (2011). PHP Framework для управления базами данных на основе шаблона MVC. Международный журнал компьютерных наук и информационных технологий (IJCSIT), 3(2), 251-258.
- ^ «От Зенда к ламинам». 17 апреля 2019.
- ^ Гутманс, Энди (2005-10-27). «Zend Framework (сообщение слишком длинное, поэтому не забудьте выпить кофе)». Энди в Интернете и ИТ. Получено 2009-02-11.
- ^ "Руководство для авторов (ZF v1)".
- ^ а б «Документация на компоненты ZF».
- ^ а б c d е ж грамм час я j k л м п о п Папа, Кейт. Zend Framework 1.8 Разработка веб-приложений (1). Олтон, Великобритания: Packt Publishing, 2009. Электронная библиотека ProQuest. Интернет. 13 февраля 2017.
- ^ Падилла, А. (2009). Начало Zend Framework. Апресс.
- ^ а б c d е ж грамм час я j k л м п Аллен Р., Ло Н. и Браун С. (2009). Zend framework в действии. Мэннинг.
- ^ Компания, Zend, Rogue Wave. «Zend Framework - Проблема». framework.zend.com. Получено 2017-02-14.
- ^ Компания, Zend, Rogue Wave. «Zend Framework - Проблема». framework.zend.com. Получено 2017-02-14.
- ^ Компания, Zend, Rogue Wave. «Zend Framework - Проблема». framework.zend.com. Получено 2017-02-14.
- ^ «История PHP и родственных проектов». Группа PHP. Получено 2009-02-11.
- ^ ЛаМоника, Мартин (25 февраля 2005 г.). «IBM поддерживает программное обеспечение с открытым исходным кодом для Интернета». cnet.com. Получено 2009-02-11.
- ^ Ядро, Шон Майкл (20 декабря 2006 г.). «Google Data присоединяется к PHP Zend Framework». internetnews.com. Получено 2009-02-11.
- ^ Криль, Пол (31 октября 2006 г.). "Microsoft, Zend ускоряют PHP для Windows". infoworld.com. Получено 2009-02-11.
- ^ Поттер, Майк (21.05.2014). «Вклад Adobe в поддержку Zend Framework AMF». Официальный блог команды Flex. Архивировано из оригинал на 2009-02-07. Получено 2009-02-11.
- ^ «Избранные партнеры StrikeIron». Получено 2009-02-11.
- ^ «О Zend Framework». Получено 2009-02-11.
- ^ Зачем использовать Zend Framework? Автор: SuntecOSS, дата обращения 21 апреля 2016 г.
- ^ Zend's Apigility, конструктор API с открытым исходным кодом для разработки качественных API Автор: SuntecOSS, дата обращения 19 мая 2016 г.
- ^ "Зенд сайт". Zend.com. Получено 17 мая, 2017.
- ^ «Загрузите Zend Studio - IDE, профилировщик PHP, мобильные устройства, модульное тестирование и многое другое». www.Zend.com. Получено 17 мая, 2017.
- ^ "Руководство разработчика Zend Framework". 1 июля 2006 г.. Получено 14 июля, 2008.
- ^ "Пресс-релиз Simple Cloud API". Архивировано из оригинал 1 декабря 2009 г.. Получено 2009-11-05.
- ^ «Веб-сайт Zend Framework». Получено 2009-11-05.
- ^ simplecloud.org
- ^ zendframework (28.06.2016). "Zend Framework 3 выпущен!". Получено 2016-10-12.
- ^ «Zend Framework 2.0.0dev1». 2010-08-06. Получено 2010-09-04.
- ^ «Zend Framework 2.0.0dev2». 2011-11-03. Получено 2011-03-18.
- ^ «Выпущен Zend Framework 2.0.0 STABLE! - Zend Framework - Zend Framework». Framework.zend.com. 5 сентября 2012 г.. Получено 14 июня, 2013.