Ответ
PSR (PHP Standards Recommendation) — это набор стандартов, разработанных группой PHP-FIG (Framework Interop Group) для обеспечения совместимости и единообразия кода в экосистеме PHP.
Основные стандарты:
- PSR-1 (Basic Coding Standard) и PSR-12 (Extended Coding Style Guide): определяют базовый стиль кодирования (именование, структура файлов, отступы).
- PSR-4 (Autoloading Standard): стандарт автозагрузки классов через пространства имён и файловую структуру. Это основа современной автозагрузки через Composer.
- PSR-7 (HTTP Message Interface): определяет интерфейсы для HTTP-запросов и ответов, что позволяет создавать взаимозаменяемые компоненты для работы с HTTP.
- PSR-11 (Container Interface): стандартизирует интерфейс контейнера внедрения зависимостей (DI).
- PSR-14 (Event Dispatcher): определяет интерфейсы для системы событий (event dispatcher).
Практический пример PSR-4 в composer.json:
{
"autoload": {
"psr-4": {
"MyApp\": "src/"
}
}
}
После этого класс MyAppServiceUserService будет автоматически загружен из файла src/Service/UserService.php. Следование PSR упрощает интеграцию сторонних библиотек и поддержку кода.
Видео-ответы
▶
▶
▶
▶
▶