PSR — это набор рекомендаций и стандартов, разработанных PHP-FIG (Framework Interop Group) для обеспечения совместимости между PHP-проектами и унификации подходов к разработке.
<?php
или <?=
тегиMyClass
)\Vendor\Namespace\ClassName => /path/to/project/vendor/Namespace/ClassName.php
require_once
в пользу автоматической загрузкиPsr\Http\Message\RequestInterface
Psr\Http\Message\ResponseInterface
Psr\Http\Message\ServerRequestInterface
Psr\Http\Message\StreamInterface
Psr\Http\Message\UploadedFileInterface
interface ContainerInterface {
public function get($id);
public function has($id);
}
RequestHandlerInterface
MiddlewareInterface
interface CacheInterface {
public function get($key, $default = null);
public function set($key, $value, $ttl = null);
// ... и другие методы
}
Установите CodeSniffer с PSR-стандартами:
composer require --dev squizlabs/php_codesniffer
composer require --dev phpcompatibility/php-compatibility
Используйте автоматическое исправление:
phpcs --standard=PSR12 src/
phpcbf --standard=PSR12 src/
Для автозагрузки (PSR-4) настройте composer.json:
{
"autoload": {
"psr-4": {
"MyVendor\\MyProject\\": "src/"
}
}
}
PSR — это набор стандартов, которые помогают PHP-сообществу создавать совместимый, поддерживаемый и профессиональный код. Наиболее важные стандарты включают PSR-1/PSR-12 (стиль кода), PSR-4 (автозагрузка), PSR-7 (HTTP-сообщения) и PSR-11 (контейнеры). Следование этим стандартам значительно упрощает командную разработку и интеграцию компонентов.