Pull to refresh
  • by relevance
  • by date
  • by rating

Zend Framework 2.0.0beta3 Released!

Zend Framework
Сегодня был выпущен третий beta релиз. По словам разработчиков в каждый новый релиз будут добавляться все новые функции до тех пор, пока продукт не достигнет “зрелости”, после чего разработку заморозят и выпустят Release Candidate. Планируется выпускать новые версии каждые 6 недель.
Читать дальше →
Total votes 17: ↑13 and ↓4 +9
Views1K
Comments 11

Пишем CLI модуль для Zend Framework 2

PHPZend Framework
Sandbox
image
Приветствую!

Недавно начал работать с Zend Framework 2, и возникла потребность написать cli модуль работающий с миграциями базы данных.

В этой статье я опишу как создать модуль для Zend 2 для работы с ним из командной строки на примере модуля миграций, как написать тесты, как опубликовать модуль в packagist.org

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

Установка фрэймворка


Начнем с установки фрэймворка, в качестве каркаса возьмем ZendSkeletonApplication
Читать дальше →
Total votes 8: ↑7 and ↓1 +6
Views11.9K
Comments 5

ZFTool, командная строка для ZF2

Zend Framework
Translation
ZFTool — компонент командной строки для управления приложениями, написанными на Zend Framework 2. Этот инструмент еще находится в разработке. Мы выпустили раннюю версию, чтобы вы могли поскорей начать его использовать. В текущей версии инструмент умеет:

  • создавать ZF2-проект, устанавливая каркас приложения (skeleton application);
  • создавать новые модули внутри существующего приложения;
  • возвращать список установленных в приложении модулей;
  • возвращать конфигурационный файл приложения;
  • устанавливать библиотеки ZF2, выбирая нужные версии;
Читать дальше →
Total votes 6: ↑4 and ↓2 +2
Views7.5K
Comments 1

MVC система в Zend Framework 2

Website developmentZend Framework
Sandbox
Tutorial
Здравствуйте дорогие хабражители.
Совсем недавно вышел в свет Zend Framework 2. Однако его изучение у многих усложняет отсутствие русской документации и единого сообщества. Так же во второй ветке этого фреймворка появилось множество нововведений и плюшек, про который обычный PHP программист раньше даже не слышал. Но их можно изучить особо не потея. А вот понять, как работает ZF2 без понимания логики работы его MVC системы достаточно затруднительно. Поэтому решил сделать перевод с официального сайта именно этого раздела.И так приступим.

MVC в Zend Framework 2



Zend\Mvc представляет собой совершено новую реализацию MVC системы для Zend Framework 2. Основное внимание было уделено производительности и гибкости.

Слой MVC построен на основе следующих компонентов:

  1. Zend\ServiceManager — Zend Framework предоставляет набор различных сервисов, определенных в Zend\Mvc\Service. ServiceManager создает и настраивает экземпляр вашего приложения и рабочего процесса.
  2. Zend\EventManager – MVC является событиями. Данный компонент используется повсеместно. Для начальной загрузки приложения, возврата ответов (response) и запросов (request), настройки и получения маршрутов (routes), а так же для обработки (render) скриптов вида (views).
  3. Zend\Http – особый объект запросов (request) и ответов (response). Используется с Zend\Stdlib\DispatchableInterface. Все контроллеры представляют собой объекты «dispatch».

В MVC слое используются следующие вспомогательные компоненты:

  1. Zend\Mvc\Router – содержит классы, обеспечивающие маршрутизацию запросов. Другими словами, перенаправляет запросы к нужным контроллерам.
  2. Zend\Http\PhpEnvironment – предоставляет набор декораторов объектов HTTP запросов и ответов, обеспечивающих инъекцию запросов в текущую среду (включая GET и POST параметры, HTTP заголовки).
  3. Zend\Mvc\Controller – набор абстрактных классов контроллеров с базовой функциональностью, такой как создание событий, диспетчеризацией действий и т.д.
  4. Zend\Mvc\Service – набор ServiceManager фабрик и определений по умолчанию для различных процессов приложения.
  5. Zend\Mvc\View – предоставляет стандартные возможности визуализации скриптов вида, регистрации помощников и многое другое. Так же предоставляет различные слушатели, которые «связывают» рабочий процесс MVC, обеспечивая такие функции, как автоматическое разрешение имен шаблонов, автоматическое создание модели вида и инъекций, т.д.

Читать дальше →
Total votes 11: ↑8 and ↓3 +5
Views30.9K
Comments 5

ZF2: Получить db adapter без использования service locator

Zend Framework
Translation
Recovery mode
Привет, читатели!

Многие разработчики начали изучать Zend framework 2 и, скорее всего, столкнулись с проблемой использования постоянного адаптера для базы данных. Я хотел бы поделиться с вами интересной статьей, которая помогла мне решить этот вопрос.

Читать дальше →
Total votes 9: ↑4 and ↓5 -1
Views4.6K
Comments 6

Дайджест интересных новостей и материалов из мира PHP за последние две недели №16 (22.04.2013 — 06.05.2013)

Zfort Group corporate blogWebsite developmentPHP


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 86: ↑66 and ↓20 +46
Views21.2K
Comments 11

Дайджест интересных новостей и материалов из мира PHP за последние две недели №17 (06.05.2013 — 21.05.2013)

Zfort Group corporate blogWebsite developmentPHP


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 76: ↑64 and ↓12 +52
Views19.8K
Comments 12

Дайджест интересных новостей и материалов из мира PHP за последние две недели №18 (22.05.2013 — 03.06.2013)

Zfort Group corporate blogWebsite developmentPHP


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 63: ↑55 and ↓8 +47
Views14.4K
Comments 11

Кастомизация каптчи в Zend Framework 2

Zend Framework
Sandbox
Компонент Zend\Captcha может принимать различные формы, в том числе задавать логические вопросы, генерировать искаженные шрифты, и передавать несколько изображений, установив между ними связь. Zend\Captcha имеет целью обеспечить разнообразие серверных решений, которые могут быть использованы либо в автономном режиме либо в сочетании с Zend\Form компонентой.

Элемент Captcha имеет более одного поля, которые рендерятся друг за другом. Встроеный генератор изображений каптч (Zend\Captcha\Image.php) использует свой собственный хелпер (Zend\Form\View\Helper\Captcha\Image.php) для создания изображения. Так-же, в Zend\Captcha\Image.php находится метод 'getHelperName'. Этот метод передает имя хелпера для рендеринга изображения каптчи. По умолчанию 'getHelperName' передает 'captcha/image' — экземпляр класса Zend\Form\View\Helper\Captcha\Image.php. Если углубиться с помощью дебаггера, можно увидеть, что в свойстве экземпляра phpRenderer::__helpers, в invokablesClasses располагается хелпер 'captchaimage'. Это и есть Zend\Form\View\Helper\Captcha\Image.php, упомянутый ранее. Грубо говоря — вы просто создаете изображение, а всё остальное делает за вас рендерер используя хелпер, хотя такое положение вещей устраивает не всех.
Читать дальше →
Total votes 6: ↑4 and ↓2 +2
Views1.8K
Comments 1

Дайджест интересных новостей и материалов из мира PHP за последние две недели №21 (01.07.2013 — 15.07.2013)

Zfort Group corporate blogWebsite developmentPHP


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 69: ↑58 and ↓11 +47
Views18.7K
Comments 4

Пример разработки блога на Zend Framework 2. Часть 1. ZendSkeletonApplication

Zend Framework
Tutorial
В последние несколько лет моя работа связана с использованием CMS Drupal, но на досуге я изучал и just for fun запускал проекты на питоновских фреймворках Django, Flask и Twisted. Сейчас я решил освоить основы двух-трех популярных PHP-фреймфорков и первыми я решил изучить Zend Framework 2 и Yii.

В процессе ознакомления с Zend Framework 2 я изучил туториал с официального сайта (http://framework.zend.com/manual/2.2/en/user-guide/overview.html), просмотрел документацию фреймворка (http://framework.zend.com/manual/2.2/en/index.html), прочитал книгу Michael Romer “Web development with Zend Framework 2” и собрал собственное тестовое приложение.

Переварив всю эту информацию, я пришел к мысли, что официальный туториал к фреймворку суховат:
  • в нем не рассказывается о работе с пользователями, сессиями и правами доступа,
  • лишь вскользь рассматривается такая основополагающая часть фреймворка как ServiceManager,
  • в качестве интерфейса с базой данных безальтернативно используется паттерн Table Gateway (и соответствующая его реализация в фреймворке),
  • используется встроенный в фреймворк шаблонизатор, который после питоновского Jinja 2 кажется совершенно неудобным и примитивным,
  • и т.д.

В итоге, более-менее удовлетворительное по функционалу приложение я смог создать после прочтения книги.

В этой статье я хочу привести пример разработки простого блога, в ней будет несколько отличий от официального туториала. В первую очередь я постараюсь заострить внимание на тех вопросах, которые во время изучения показались мне недостаточно раскрытыми в официальном туториале. Кроме того я буду использовать некоторые технологии, альтернативные тем, что используются в Zend фреймворке по умолчанию:
  • в качестве шаблонизатора будет использоваться Twig,
  • для работы с БД — Doctrine ORM,
  • для авторизации/аутентификации и распределения прав доступа я буду использовать существующие модули ZfcUser и BjyAuthorize,
  • также я рассмотрю вопросы разработки собственных валидаторов форм, View плагинов и другие.

За деталями добро пожаловать под кат
Total votes 23: ↑22 and ↓1 +21
Views66.2K
Comments 28

Пример разработки блога на Zend Framework 2. Часть 2. Модуль MyBlog

PHPZend Framework
Tutorial
Это вторая из трех частей статьи, посвященной разработке простого приложения при помощи Zend Framework 2. В первой части я рассмотрел структуру ZendSkeletonApplication, а в этой части приведу пример разработки простого модуля. Третья часть будет посвящена работе с пользователями и шаблонизатором Twig.

Установка и настройка дополнительных модулей


Первым делом хочу отметить, что установка стороннего модуля в Zend Framework обычно состоит из примерно таких четырех шагов:
  1. добавляем соответствующую строчку в composer.json, чтобы сообщить Композеру о новом модуле,
  2. выполняем команду php composer.phar update, чтобы Композер загрузил новый модуль и при необходимости перегенерировал автолоад файлы,
  3. добавляем новый модуль в список modules в файле config/application.config.php,
  4. при необходимости, размещаем конфигурационный файл модуля (обычно пример такого файла находится в папке config модуля) в config/autoload и делаем в нем необходимые правки.

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

Давайте начнем с установки простого, но полезного модуля Zend Developer Tools.
Читать дальше →
Total votes 21: ↑18 and ↓3 +15
Views45.9K
Comments 22

Пример разработки блога на Zend Framework 2. Часть 3. Работа с пользователями

PHPZend Framework
Tutorial
Это третья (последняя?) часть статьи, посвященной разработке простого приложения при помощи Zend Framework 2. В первой части я рассмотрел структуру ZendSkeletonApplication, во второй части привел пример разработки простого модуля. Эта часть посвящена работе с пользователями, а также я прикручу к проекту шаблонизатор Twig.

Работа с пользователями


Код написанный в предыдущих частях, позволяет создавать, редактировать и удалять блогпосты всем посетителям сайта. Такой подход неприемлем для любого рабочего сайта, поэтому сейчас настало время решить вопросы регистрации/авторизации и распределения прав доступа к различным возможностям приложения.

Zf Commons


Для Zend фреймворка написано достаточно много модулей, решающих стандартные задачи, найти их можно на специальном сайте: modules.zendframework.com. Вместо разработки своих велосипедов для решения стандартных задач я считаю более правильным использовать/адаптировать под себя готовые решения (по крайней мере готовые решения нужно изучить прежде чем браться за разработку велосипеда).

Среди множества разработчиков модулей выделяется команда ZF Commons, ребятами из этой команды разработан ряд очень полезных модулей, которые мы будем использовать в этом проекте: github.com/ZF-Commons. Рассмотрим некоторые из них, которые необходимы нам на данном этапе.
Читать дальше →
Total votes 20: ↑14 and ↓6 +8
Views26.3K
Comments 9

Дайджест интересных новостей и материалов из мира PHP за последние две недели №25 (25.08.2013 — 08.09.2013)

Zfort Group corporate blogWebsite developmentPHP


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 55: ↑44 and ↓11 +33
Views21K
Comments 10

Дайджест интересных новостей и материалов из мира PHP за последние две недели № 27 (22 сентября — 6 октября 2013)

Zfort Group corporate blogWebsite developmentPHP


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Кстати, вчера исполнился ровно год с момента публикации первого PHP-дайджеста на Хабре. Огромное спасибо всем, кто так или иначе помогал создавать дайджесты, спасибо разработчикам за замечательные инструменты, авторам за их полезные статьи, а главное спасибо вам за то, что до сих пор читаете!
Читать дальше →
Total votes 71: ↑64 and ↓7 +57
Views20.9K
Comments 7

Разбор URL в Zend Framework 2

Zend Framework
Задача:
  1. Иметь метод, разбирающий на составляющие строку содержащую URL. Строка может содержать как абсолютный, так и относительный URL, и оба эти варианты должны быть правильно разобраны.
  2. Причём в стоке допустим «неправильный» формат абсолютной ссылки — без «http://». Далее по тексту ссылки «неправильного» формата будем называть неполными абсолютными ссылками.
  3. Реализовать поддержку «РФ» доменов.

Читать дальше →
Total votes 9: ↑4 and ↓5 -1
Views6.1K
Comments 7

RESTful Api используя Zend framework 2

Website developmentPHPZend Framework
Sandbox
Recovery mode

Небольшой гайд по созданию простейшего RESTful api с помощью Zend framework 2 (далее zf2).


Нам потребуется zf2 v2.3@dev, а так же Doctrine 2 ORM.

Итак, начнем с создания структуры директорий нашего api:

mkdir -pv zf2-api/{config/autoload,public,module/v1/{config,src/v1/{Controller,Service,Entities}}}


Загружаем композер
curl -sS https://getcomposer.org/installer | php

Так же нам потребуется создать composer.json с такими зависимостями и установить их.
"require": {
        "php": ">=5.4",
        "zendframework/zendframework": "2.*@dev",
        "doctrine/doctrine-orm-module" :"0.*"
    }

Читать дальше →
Total votes 11: ↑7 and ↓4 +3
Views13.7K
Comments 7

Zend Framework 2.0 разработка веб-приложений

Издательский дом «Питер» corporate blogPHP
Всем привет!

Хочу представить вам нашу новую книгу по теме Zend Framework:

«Zend Framework 2.0 разработка веб-приложений»
Автор: Кришна Шасанкар

image

Книга предназначена для тех, кто хочет быстро начать работать в этом фреймворке. Если вы — PHP-разработчик, не знакомый с Zend Framework, но желающий быстро освоить этот фреймворк на практике, то эта книга для вас.
Предполагается, что у вас есть базовые знания в области объектно-ориентированного программирования на языке PHP.
Читать дальше →
Total votes 18: ↑12 and ↓6 +6
Views5.5K
Comments 14

Дайджест интересных новостей и материалов из мира PHP № 31 (25 ноября — 8 декабря 2013)

Zfort Group corporate blogWebsite developmentPHP


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 51: ↑46 and ↓5 +41
Views18.5K
Comments 13

PHP фреймворк 2013

PHPPhalcon
Идея провести голосование навеяна странной статьей, результаты которой хочется поставить под сомнение. Возможно предпочтения действительно определяются регионом и маленькой выборкой автора, поэтому предлагаю провести голосование среди большого Хабрасообщества.
Читать дальше →
Total votes 57: ↑41 and ↓16 +25
Views43.6K
Comments 149
1