Фреймворки PHP: обзор
Фреймворк — каркас для приложения: позволяет разрабатывать быстрее, но в результате страдает производительность и гибкость. Когда важнее скорость разработки, нежели скорость работы — берите фреймворк. Ниже краткий обзор шести популярных PHP-фреймворков.
Yii
Yii (произносится как Yee или [ji:]) означает простой (easy), эффективный (efficient) и расширяемый (extensible).
Фреймворк для простых задач и сложных проектов с низкими требованиями к версиям установленного ПО: минимальная версия PHP 5.1. Это расширяет возможности применения фреймворка, но и ограничивает соответствие стандартам кода PSR последних версий. Поэтому поддерживается собственный стандарт написания кода Yii2 code style. Последняя версия 2.0.6 вышла в августе 2015 года. Есть русская страница поддержки, но документация на русском весьма скудная.
Codeigniter
Этот фреймворк более требователен к версиям ПО: минимальная версия PHP 5.2.4 при рекомендуемой 5.4 или выше. Главные преимущества — простота использования, скорость работы, легкость и расширяемость. Есть страница русской поддержки, но она отстает от официальной. Последняя версия 3.0.3 вышла 31 октября 2015 года.
CakePHP
23 декабря 2015 вышла версия 3.1.6 с поддержкой PHP 7. Минимальная версия PHP — 5.4.16. Плюсы фреймворка: простая конфигурация, лицензия MIT для использования в коммерческих приложениях и встроенная система защиты от CSRF, XSS и sql injection.
Symfony
Фреймворк (текущая версия 3.0, LTS 2.8) поддерживает стандарт написания кода PSR-7. На его основе были написаны Drupal, phpBB, ezpublish, orocrm, piwik и Laravel.
Laravel
В последние несколько лет фреймворк не сходит с первых строк рейтингов лучших фреймворков для личных и бизнес приложений. Актуальная версия 5.2 с поддержкой минимальной версии PHP не ниже 5.5.9. При этом доступны относительно свежие и привлекательные компоненты (в том числе компоненты Symfony). Минус — более низкая производительность по сравнению с Symfony.
Phalcon
Особенность его в том, что основные компоненты, в том числе обеспечивающие взаимодействие с СУБД, реализованы на С/С++. При этом для их использования нужен PHP версии не ниже 5.3. Минус в сложности развертывания — требуется явная поддержка фреймворка со стороны провайдера. Однако фреймворк рассчитан на высоконагруженные сервисы, так что для его размещения целесообразно использовать выделенный виртуальный или физический сервер. Это компенсирует недостаток, так как фреймворк работает с распространенными платформами: есть версия для Windows, репозитории для Ubuntu, Debian, собранные пакеты для OpenSUSE, Arch Linux, FreeBSD, возможна установка с использованием cPanel.
Какие фреймворки используете вы? Пишите в комментариях.
Хотите разрабатывать на PHP? Рекомендуем профессию «Программист PHP».