Кейсы

PHP Composer MySQL

Похожие кейсы:

Другие
2024 год

REST API

Создание масштабируемого REST API сервера на чистом PHP с трехслойной архитектурой (Controller-Service-Repository), middleware для авторизации и обработкой ошибок. Поддержка ORM и юнит-тестов.

Это REST API-сервер, построенный на чистом PHP с использованием современной архитектуры и паттернов проектирования. Проект реализует backend-сервис с четким разделением ответственности между слоями приложения: контроллеры обрабатывают HTTP-запросы, сервисы содержат бизнес-логику, а репозитории отвечают за работу с базой данных. API использует единую точку входа через index.php с маршрутизацией запросов, поддерживает middleware для авторизации и других промежуточных операций, а также включает систему обработки исключений для корректной работы с ошибками.

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

Задача решена через применение трехслойной архитектуры (Controller-Service-Repository), где каждый слой имеет строго определенные обязанности. Контроллеры принимают данные из запросов и формируют ответы, сервисы валидируют данные и применяют бизнес-правила, репозитории абстрагируют работу с базой данных через ORM. Реализован собственный роутер для обработки маршрутов, система middleware для сквозной функциональности, а структура Utils и Exceptions обеспечивает переиспользуемость кода и централизованную обработку ошибок.

Основные возможности

  • Трехслойная архитектура
  • Middleware система
  • ORM интеграция
  • REST API endpoints
  • Роутинг запросов
  • Юнит-тестирование