PHP Standard Recommendation
Eine PHP Standard Recommendation (PSR) ist eine PHP-Spezifikation, welche durch die PHP Framework Interop Group veröffentlicht wird. Ähnlich einem Java Specification Request in Java dient sie der Standardisierung von Programmierkonzepten. Ziel ist es die Interoperabilität von Komponenten zu ermöglichen und eine gemeinsame technische Basis zu schaffen oder bewährte Konzepte für einen guten Programmierstil sowie eine gute Testbarkeit von Komponenten umzusetzen. Verschiedene Frameworks wie z. B. die der TYPO3-Community, Symfony oder Zend implementieren hierbei PSR-Spezifikationen in einem selbst gewählten Umfang.
Nummer | Name | Beschreibung | Status |
---|---|---|---|
PSR-0 | Autoloading Standard | Benennung von Komponenten in Bezug auf Hersteller, Namespace und Klasse sowie zugehörigen Verzeichnisnamen, so dass Komponenten bei Verwendung im PHP-Code bei Bedarf einheitlich automatisch nachgeladen werden können. | Angenommen, aber seit dem 21. Oktober 2014 veraltet, empfohlen wird stattdessen PSR-4 zu benutzen. |
PSR-1 | Basis Coding Standard | Allgemeiner Programmierstil, der z. B. die Tags am Anfang eines PHP-Codes, den verwendeten Zeichensatz (UTF-8) sowie die Benennung von Klassen/Methoden regelt; erfordert die Umsetzung von PSR-0. | Angenommen |
PSR-2 | Coding Style Guide | Legt z. B. fest an welchen Stellen im Code Zeilenumbrüche bei Klammerausdrücken zu verwenden sind, Einrückungen und Leerzeichen oder die Sichtbarkeit von Eigenschaften und Methoden; erfordert die Umsetzung von PSR-1. | Angenommen, aber von PSR-12 abgelöst[1] |
PSR-3 | Logger Interface | Einheitliches Interface für Logmeldungen, zu verwendende Loglevel, Exceptions, das Format von Logmeldungen und zu verwendende Hilfsklassen in diesem Umfeld | Angenommen |
PSR-4 | Improved Autoloading | Erweiterung der Autoloading-Spezifikation aus PSR-0 | Angenommen |
PSR-5 | PHPDoc | Eine vollständige und formale Definition der PHPDoc-Syntax | Entwurf |
PSR-6 | Caching Interface | Interfaces für das Konzept des Caching | Angenommen |
PSR-7 | HTTP Message Interfaces | Einheitliches Interface für HTTP-Nachrichten und Umgang mit URIs | Angenommen |
PSR-8 | Huggable Interface | Aprilscherz | Inaktiv[2] |
PSR-9 | Security Disclosure | Vereinheitlichung von sicherheitsrelevanten Meldungen innerhalb von Projekten | Inaktiv[2] |
PSR-10 | Security Advisories | Vereinheitlichung der Kommunikation sicherheitsrelevanter Meldungen mit der Öffentlichkeit | Inaktiv[2] |
PSR-11 | Container Interface | Interface für Dependency Injection Containers | Angenommen (13.2.2017)[3] |
PSR-12 | Extended Coding Style Guide | Erweitert PSR-1 und PSR-2 um weitere Regeln zum Programmierstil | Angenommen (9.8.2019)[4] |
PSR-13 | Hypermedia Links | Spezifikation bzgl. einheitlicher Darstellung von hypermedialen Links. | Angenommen (15.11.2016)[5] |
PSR-14 | Event Manager | Einheitliche Schnittstellen für die Implementierung von Events. | Angenommen (25.3.2019)[6] |
PSR-15 | HTTP Handlers | Angenommen (22.1.2018)[7] | |
PSR-16 | Simple Cache | Vereinfachte Schnittstelle für Caching-Bibliotheken | Angenommen (1.1.2017)[8] |
PSR-17 | HTTP Factories | Standard für Fabrikmethoden zur Erstellung von PSR-7-kompatiblen Objekten | Angenommen (31.7.2018)[9] |
PSR-18 | HTTP Client | Standard zum Senden und Empfangen von HTTP-Anfragen | Angenommen (29.10.2018)[10] |
PSR-19 | PHPDoc tags | Katalog von PHPDoc-Tags | Entwurf |
Weblinks
- PHP Framework Interop Group (englisch)
- PSR-5: PHPDoc (englisch)
Einzelnachweise
- PSR-12: Extended Coding Style - PHP-FIG. Abgerufen am 16. September 2019.
- PHP Standards Recommendations - PHP-FIG. Abgerufen am 16. September 2019.
- Google Groups. Abgerufen am 16. September 2019.
- Google Groups. Abgerufen am 16. September 2019.
- Google Groups. Abgerufen am 16. September 2019.
- Google Groups. Abgerufen am 16. September 2019.
- Google Groups. Abgerufen am 16. September 2019.
- Google Groups. Abgerufen am 16. September 2019.
- Google Groups. Abgerufen am 16. September 2019.
- Google Groups. Abgerufen am 16. September 2019.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.