Вы читаете предварительную версию v0.1. API могут измениться.
~ 1 мин чтенияОбновлено 2026-10-29

Что такое PHP-фреймворк?

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

Elang — один из таких фреймворков. Его текущая предварительная версия связывает устоявшиеся компоненты PHP через небольшой API приложения. Понимание базового жизненного цикла запроса облегчает изучение как Elang, так и других фреймворков.

Начните с браузера и сервера

Когда кто-то открывает URL, браузер отправляет HTTP-запрос. Сервер выполняет PHP-код и возвращает HTTP-ответ. Этот ответ может содержать HTML страницы, JSON для API, перенаправление или статус ошибки.

Интерфейс описывает то, что браузер отображает и делает: HTML, CSS и JavaScript. Серверная часть обрабатывает запросы и данные на сервере. PHP-фреймворк относится к серверной части, даже когда формирует HTML, отправляемый браузеру.

Что делает маршрут

Маршрут связывает метод и путь запроса с обработчиком. В Elang:

$router->get('/hello/{name}', fn (string $name) => [
    'message' => 'Hello, '.$name.'!',
]);

GET — метод. /hello/{name} — шаблон пути. Анонимная функция — обработчик. Именованное значение передаётся в функцию, а возвращённый массив PHP становится JSON-ответом.

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

Зачем нужны контроллеры и сервисы

Маршрут может начинаться с небольшой функции. По мере роста поведения контроллер даёт ему понятное место. Сервисы отвечают за переиспользуемые задачи, например отображение шаблонов, проверку ввода или доступ к базе данных.

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

Что фреймворк не решает за вас

Фреймворк не знает, кому принадлежит запись, какой пользователь может её редактировать, что должен делать продукт и правильно ли настроено развёртывание. Это обязанности приложения.

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

Фреймворк, библиотека и CMS

Инструмент Типичная роль Что вы продолжаете создавать
Библиотека Решает конкретную задачу, например отправку почты Окружающее приложение и его соглашения
Фреймворк Координирует структуру приложения и переиспользуемые инструменты Возможности продукта, правила данных и контроль доступа
CMS Предоставляет продукт управления содержимым и редакционный процесс Конфигурацию сайта, содержимое и собственные расширения

Фреймворк может использовать библиотеки внутри. Elang использует компоненты Symfony, Doctrine DBAL, Twig и другие пакеты; он не заменяет экосистему PHP отдельным менеджером пакетов.

Когда изучать Elang

Elang полезен для знакомства с небольшим и явным API PHP-приложения и наблюдения за прозрачным проектом разработки. Предварительная версия имеет изменяющиеся API и меньший набор возможностей, чем зрелые фреймворки.

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

Практический порядок обучения

  1. Проверьте PHP и Composer с помощью урока по окружению.
  2. Изучите небольшой объём синтаксиса PHP из примеров.
  3. Создайте первый маршрут и изучите его ответ.
  4. Добавьте валидацию и HTML-шаблоны.
  5. Пройдите полный проект доски задач.
  6. Отдельными шагами изучите доступ к базе данных, тестирование и развёртывание.

Цель — понять, зачем существует каждая часть. Когда это станет ясно, имена из справочника API запоминать гораздо легче.

Нужна помощь?

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

Поиск по документации Elang

Начните вводить, чтобы найти следующий шаг.