Узнайте о Flight
Flight — это быстрый, простой и расширяемый фреймворк для PHP. Он довольно универсален и может использоваться для создания любых веб-приложений. Он создан с учётом простоты и написан так, чтобы его было легко понимать и использовать — как людям, так и ИИ-помощникам для программирования.
Примечание: Вы увидите примеры, в которых используется
Flight::как статическая переменная, а также примеры с объектом Engine$app->. Оба подхода взаимозаменяемы.$appи$this->appв контроллере/промежуточном ПО — это рекомендуемый подход команды Flight (и именно его придерживаются официальный скелет иAGENTS.mdдля новых проектов).
Основные компоненты
Маршрутизация
Узнайте, как управлять маршрутами для вашего веб-приложения. Это также включает группировку маршрутов, параметры маршрутов и промежуточное ПО.
Промежуточное ПО
Узнайте, как использовать промежуточное ПО для фильтрации запросов и ответов в вашем приложении.
Автозагрузка
Узнайте, как автозагружать собственные классы. Регистр папок должен соответствовать вашим пространствам имён — скелет использует App\ и папки в PascalCase, например app/Controller/.
Запросы
Узнайте, как обрабатывать запросы и ответы в вашем приложении.
Ответы
Узнайте, как отправлять ответы вашим пользователям.
HTML-шаблоны
Узнайте, как рендерить HTML с помощью Twig (по умолчанию в скелете), Latte или других движков — не только встроенных PHP-представлений.
Безопасность
Узнайте, как защитить ваше приложение от распространённых угроз безопасности.
Конфигурация
Узнайте, как настроить фреймворк для вашего приложения.
Менеджер событий
Узнайте, как использовать систему событий для добавления пользовательских событий в ваше приложение.
Расширение Flight
Узнайте, как расширить фреймворк, добавляя собственные методы и классы.
Хуки методов и фильтрация
Узнайте, как добавлять хуки событий к вашим методам и внутренним методам фреймворка.
Контейнер внедрения зависимостей (DIC)
Узнайте, как использовать контейнеры внедрения зависимостей (DIC) для управления зависимостями вашего приложения.
Вспомогательные классы
Коллекции
Коллекции используются для хранения данных и предоставления к ним доступа как в виде массива, так и в виде объекта для удобства использования.
JSON-обёртка
Содержит несколько простых функций, чтобы кодирование и декодирование JSON было последовательным.
SimplePdo
PDO иногда может доставлять больше хлопот, чем необходимо. SimplePdo — это современный вспомогательный класс для PDO с удобными методами, такими как insert(), update(), delete() и transaction(), которые значительно упрощают операции с базой данных.
PdoWrapper (устаревший)
Оригинальная PDO-обёртка устарела начиная с версии v3.18.0. Пожалуйста, используйте вместо неё SimplePdo.
Обработчик загруженных файлов
Простой класс, помогающий управлять загруженными файлами и перемещать их в постоянное место хранения.
Важные концепции
Почему фреймворк?
Краткая статья о том, почему вам стоит использовать фреймворк. Хорошо бы понять преимущества использования фреймворка, прежде чем начать им пользоваться.
Кроме того, отличный учебник создан @lubiana. Хотя он не вдаётся в подробности, касающиеся именно Flight, это руководство поможет вам понять некоторые основные концепции, связанные с фреймворками, и почему их полезно использовать. Вы можете найти учебник здесь.
Flight в сравнении с другими фреймворками
Если вы переходите на Flight с другого фреймворка, такого как Laravel, Slim, Fat-Free или Symfony, эта страница поможет вам понять различия между ними.
Другие темы
Модульное тестирование
Следуйте этому руководству, чтобы узнать, как модульно тестировать ваш код Flight и сделать его по-настоящему надёжным.
ИИ и опыт разработчика
Flight создан для работы с LLM для написания кода: AGENTS.md, команды Runway ai:* и понятная структура скелета — чтобы агенты придерживались одного паттерна.
Переход с v2 на v3
Обратная совместимость в основном сохранена, но есть некоторые изменения, о которых вам следует знать при переходе с v2 на v3.