پیاسآر (PSR) مخفف PHP Standards Recommendation است، یعنی پیشنهادهای استاندارد برای همکاری میان کتابخانهها و فریمورکهای PHP. این پیشنهادها را گروه PHP-FIG که نام کاملش PHP Framework Interop Group است بررسی و منتشر میکند. پیاسآرها میتوانند قراردادهای مشترک برای Autoloading، Logger، HTTP Message، Cache و Container تعریف کنند.
فهرست پیاسآرهای پذیرفتهشده
| PSR | موضوع | کاربرد |
|---|---|---|
| PSR-1 | Basic Coding Standard | قواعد پایه فایل و کلاس |
| PSR-3 | Logger Interface | قرارداد مشترک لاگ |
| PSR-4 | Autoloading Standard | مسیر کلاس بر اساس Namespace |
| PSR-6 | Caching Interface | قرارداد Cache Pool و Item |
| PSR-7 | HTTP Message Interface | Request و Response تغییرناپذیر |
| PSR-10 | Security Reporting Process | گزارش مشکلات امنیتی در اکوسیستم |
| PSR-11 | Container Interface | دسترسی مشترک به وابستگیها |
| PSR-12 | Extended Coding Style | قواعد قالب کد |
| PSR-13 | Hypermedia Links | نمایش لینک در پاسخها |
| PSR-14 | Event Dispatcher | قرارداد رویداد و Listener |
| PSR-15 | HTTP Handlers | Middleware و Request Handler |
| PSR-16 | Simple Cache | رابط ساده Cache |
| PSR-17 | HTTP Factories | Factory برای Request و Response |
| PSR-18 | HTTP Client | رابط HTTP Client |
| PSR-20 | Clock | قرارداد زمان قابل جایگزینی |
استانداردهای منسوخ و پیشنهادهای در حال بررسی
PSR-0 و PSR-2 در وضعیت Deprecated هستند. PSR-5 مربوط به PHPDoc، PSR-19 مربوط به PHPDoc Tags، PSR-21 مربوط به Internationalization و PSR-22 مربوط به Application Tracing در فهرست Draft دیده میشوند. PSR-8 و PSR-9 کنار گذاشته شدهاند. این وضعیتها مربوط به زمان تهیه این متناند و برای فهرست بهروز باید صفحه رسمی PHP-FIG بررسی شود.
{
"autoload": {
"psr-4": { "App\\": "src/" }
}
}
composer dump-autoload
منبع رسمی
برای دیدن وضعیت روز هر پیشنهاد به https://www.php-fig.org/psr/ مراجعه کنید. اجرای استاندارد با پذیرش رسمی آن دو مفهوم جداگانهاند.
اصطلاحات مرتبط: پیاسآر فیگ، کامپوزر و اینترفیس.