Исследование 7 фреймворков PHP с использованием компонентов Symfony

ИЩЕТЕ PHP-ФРЕЙМВОРКИ, СОЗДАННЫЕ С ПОМОЩЬЮ SYMFONY?

В этой статье мы рассмотрим их и предоставим соответствующую информацию.

Это «более легкая для усвоения» версия информации на сайте Symfony. Это больше документация, чем документальный фильм, с некоторой добавленной информацией от самих фреймворков. Здесь также содержатся некоторые наши комментарии. Там, где мы их нашли, мы дали ссылки на сторонние обзоры или сравнения.

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

Хотя эта статья не столь обширна, как наши статьи о CMS или электронной коммерции, здесь представлено большое количество фреймворков.

Если вы знаете хорошие статьи о них для курирования в социальных сетях, пожалуйста, поделитесь ими с нами.

К фреймворкам относятся:

  • Symfony
  • Laravel
  • Lumen
  • Neo Flow
  • Yii
  • CakePHP
  • Zend Expressive

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

Symfony

Исключением является Symfony. Конечно, это и сам фреймворк, и библиотека компонентов. И фреймворк использует все компоненты.

На этом сайте есть гораздо больше информации о фреймворке, так что изучайте его на здоровье. В частности, я бы рекомендовал страницу «Инструменты, ресурсы и ссылки».

Сам Symfony говорит: «Symfony — это набор PHP-компонентов, фреймворк веб-приложений, философия и сообщество — все они работают вместе в гармонии».

Фреймворк Symfony

Ведущий PHP-фреймворк для создания веб-сайтов и веб-приложений. Построен на основе компонентов Symfony.

Компоненты Symfony

Набор развязанных и многократно используемых компонентов, на которых построены лучшие PHP-приложения, такие как Drupal, Prestashop и Laravel.

Сообщество Symfony

Увлеченная группа из более чем 600 000 разработчиков из более чем 120 стран, которые стремятся помочь PHP превзойти невозможное.

Философия Symfony

Принятие и продвижение профессионализма, лучших практик, стандартизации и совместимости приложений.

Статистика проекта Symfony

+3,000 участников

+600,000 разработчиков Symfony

+200,000,000 ежемесячных загрузок

Фреймворк отмечает: «Symfony — это фреймворк для разработки веб-приложений на PHP с открытым исходным кодом. Изначально он был задуман интерактивным агентством SensioLabs для разработки веб-сайтов для своих собственных клиентов. Symfony был опубликован агентством в 2005 году под лицензией MIT Open Source, и сегодня он является одним из ведущих фреймворков для разработки PHP».

Ресурсы сообщества включают:

  • SymfonyConnect
  • Поддержка
  • Как принять участие
  • Кодекс поведения
  • События и встречи
  • Проекты, использующие Symfony
  • Статистика загрузок
  • Вкладчики
  • Поддержавшие

Официальный сайт: symfony.com

Laravel

Laravel — это фантастическое решение, где это применимо. И он довольно популярен, особенно в Соединенных Штатах. Тем не менее, хотя многие любят сравнивать Laravel и Symfony как равные, это больше похоже на яблоки и апельсины.

Мне нравится сравнивать Laravel с WordPress, а Symfony с Drupal.

Первые два дают вам все возможное, независимо от того, нужно вам это или нет. И их проще использовать, чтобы быстро создать что-то. Но с другой стороны, Laravel и WordPress нелегко масштабировать.

В то время как Symfony и Drupal больше ориентированы на предприятия и позволяют создавать практически все, что угодно. И они гораздо более масштабируемы и гибки. Но, конечно, как вы увидите ниже, Laravel в значительной степени построен на Symfony.

В Reach Studio есть хорошая статья со сравнением этих двух фреймворков.

Laravel утверждает, что это «PHP Framework для веб-ремесленников». Laravel — это фреймворк для веб-приложений с выразительным, элегантным синтаксисом. Мы уже заложили фундамент — вы можете творить, не задумываясь о мелочах».

Symfony отмечает: «Laravel — это фреймворк для веб-приложений с выразительным, элегантным синтаксисом. Мы считаем, что разработка должна быть приятным, творческим опытом, чтобы быть действительно полезной. Laravel пытается устранить боль от разработки, облегчая общие задачи, используемые в большинстве веб-проектов, такие как аутентификация, маршрутизация, сессии и кэширование».

Компоненты Symfony, используемые Laravel

  • Кэш
  • Консоль
  • ErrorHandler
  • Finder
  • HttpFoundation
  • HttpKernel
  • Почтовый ящик
  • Mime
  • Polyfill Intl ICU
  • Процесс
  • Маршрутизация
  • VarDumper

Его ресурсы включают:

  • Laracasts
  • Новости Laravel
  • Laracon
  • Laracon EU
  • Вакансии
  • Форумы

Официальный сайт: laravel.com

Lumen

Laravel отмечает: «За годы, прошедшие с момента выпуска Lumen, в PHP было сделано множество замечательных улучшений производительности. По этой причине, наряду с доступностью Laravel Octane, мы больше не рекомендуем начинать новые проекты с Lumen. Вместо этого мы рекомендуем всегда начинать новые проекты с Laravel».

Вот так.

Symfony отмечает: «Lumen — это микрофреймворк, основанный на том же фундаменте, что и Laravel, и созданный для разработки микросервисов».

Компоненты Symfony, используемые в Lumen

  • Консоль
  • ErrorHandler
  • HttpFoundation
  • HttpKernel
  • Mime
  • Процесс
  • VarDumper

Официальный сайт: lumen.laravel.com

Поток

Neo Flow говорит: «Flow — это платформа для веб-приложений, позволяющая разработчикам создавать превосходные веб-решения. Она дает быстрые результаты. Это надежная основа для сложных приложений. И она поддерживается одним из самых больших сообществ PHP».

Хотя это и не новинка, Робин Поппинберг опубликовал этот обзор Flow.

Symfony отмечает: «Flow — это PHP фреймворк для веб-приложений, ориентированный на Domain-Driven Design и чистый код. Основанный на строгих соглашениях и лучших практиках, он позволяет быстро создавать мощные веб-приложения».

Компоненты Symfony, используемые Flow

  • Консоль
  • DomCrawler
  • Polyfill PHP 7.0
  • Polyfill PHP 7.1
  • Polyfill PHP 7.2
  • Polyfill PHP 7.3
  • Polyfill PHP 7.4
  • Polyfill PHP 8.0
  • Yaml

Ссылки на сообщество включают:

  • discuss.neos.io
  • id.neos.io
  • slack.neos.io
  • translate.neos.io

Официальный сайт: flow.neos.io

Yii

Yii говорит: «Да, это так! Yii — это быстрый, безопасный и эффективный PHP-фреймворк. Гибкий, но прагматичный. Работает прямо из коробки. Имеет разумные настройки по умолчанию».

Он также китайский, так что обратите внимание на это с точки зрения кибербезопасности.

У Altamira есть этот восторженный отзыв.

Symfony отмечает: «Yii — это высокопроизводительный PHP-фреймворк, который лучше всего подходит для разработки приложений Web 2.0. Yii поставляется с богатыми возможностями: MVC, DAO/ActiveRecord, I18N/L10N, кэширование, аутентификация и контроль доступа на основе ролей, строительные леса, тестирование и др. Это может значительно сократить время разработки».

Компоненты Symfony, используемые Yii

  • Консоль
  • Файловая система
  • Finder
  • Polyfill PHP 7.3
  • Процесс
  • VarDumper
  • Yaml

Ссылки на сообщество включают:

  • Сообщество
  • Форум
  • Живой чат
  • Группа Facebook
  • Зал славы
  • Значки

Официальный сайт: yiiframework.com

CakePHP

CakePHP борется с написанием полных предложений и отмечает, что это «рецепт успеха. Создавайте прототипы быстрее, проверяйте быстрее, развивайтесь последовательно.

  • Быстрое создание
  • Без конфигурации
  • Дружественная лицензия
  • Батарейки в комплекте
  • Чистые конвенции MVC
  • Безопасность»

CakeDC делает лучшую работу по изучению фреймворка и включает примеры проектов.

Symfony отмечает: «CakePHP упрощает и ускоряет создание веб-приложений, требуя при этом меньше кода. Современный фреймворк PHP 7, предлагающий гибкий уровень доступа к базе данных и мощную систему строительных лесов, которая делает создание как небольших, так и сложных систем проще, легче и, конечно, вкуснее.»

Компоненты Symfony, используемые в данном проекте

  • Config
  • Консоль
  • Yaml

Ссылки на сообщество включают:

  • Get Involved
  • Вопросы (Github)
  • Bakery
  • Ключевые ресурсы
  • Обучение
  • Встречи
  • Мой CakePHP
  • CakeFest
  • Информационный бюллетень

Официальный сайт: cakephp.org

Zend Expressive

Итак, мы достигли дна бочки в плане интеграции Symfony. Это едва квалифицируется, поэтому мы не будем вдаваться в подробности.

Symfony отмечает: «Zend Expressive основывается на Zend-stratigility и предоставляет минималистичный PSR-7 middleware framework для PHP. С помощью Expressive вы можете создавать промежуточные приложения, такие как API, веб-сайты, одностраничные приложения и многое другое.»

Компоненты Symfony, используемые в этом проекте

  • Консоль

Официальный сайт: github.com/zendframework/zend-expressive

ЗАКЛЮЧЕНИЕ

Как вы можете видеть, существует не так много PHP-фреймворков, построенных на Symfony, по сравнению с платформами электронной коммерции или CMS.

Тем не менее, на долю тех, что есть, приходятся миллионы веб-сайтов. И некоторые из них горячо поддерживаются большими сообществами разработчиков. Они варьируются от сверхпопулярных фреймворков до менее популярных. Они имеют открытый исходный код и, за исключением Yii, созданы открытыми обществами.

Поэтому наилучшей практикой является возможность использовать несколько из них.

Если бы мы использовали что-то другое, кроме Symfony, то это был бы Laravel или Cake.

Мы надеемся, что вам понравилась статья, и, пожалуйста, поделитесь ею, если вам понравилось.

Автор

Рубен Уокер

Основатель
Symfony Station

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *