Wenn Sie schon länger mit PHP entwickeln, ist Ihnen wahrscheinlich der Begriff PSR-12 begegnet. Es handelt sich um einen der am weitesten verbreiteten Codierungsstandards in der PHP-Community und zielt darauf ab, die Konsistenz der PHP-Codebasen über verschiedene Projekte hinweg sicherzustellen. Unabhängig davon, ob Sie alleine oder im Team arbeiten, kann die Befolgung von PSR-12 Ihren Code sauberer, lesbarer und einfacher zu pflegen machen. In diesem Blog erläutern wir, was PSR-12 ist, warum es wichtig ist und wie Sie es in Ihren Projekten anwenden können.
PSR-12 ist ein Coding Style Guide für PHP, entwickelt von der PHP-FIG (Framework Interoperability Group). Es baut auf dem vorherigen PSR-2-Standard auf und bietet einen aktualisierten Regelsatz, der moderne PHP-Praktiken widerspiegelt und die Konsistenz über Codebasen hinweg verbessert.
Betrachten Sie PSR-12 als die Blaupause zum Schreiben von sauberem, lesbarem und wartbarem PHP-Code. Durch die Einhaltung von PSR-12 können Entwickler sicherstellen, dass ihr Code einer standardisierten Struktur entspricht, was die Zusammenarbeit mit anderen und die Arbeit an Open-Source-Projekten erleichtert.
Bei Codierungsstandards wie PSR-12 geht es nicht nur darum, Leerzeichen und Tabulatoren zu ignorieren. Deshalb sind sie wichtig:
Lass uns in einige der wichtigsten Regeln eintauchen, die PSR-12 festlegt. Obwohl es viele kleinere Richtlinien gibt, sind hier diejenigen, die am meisten hervorstechen.
PSR-12 verlangt, dass Namespaces und Nutzungsdeklarationen einer bestimmten Reihenfolge folgen, um die Klarheit zu verbessern:
Beispiel:
<?php namespace App\Controllers; use App\Models\User; use App\Repositories\UserRepository; class UserController { // Class implementation }
PSR-12 erzwingt einige strenge Regeln, wie Klassen, Eigenschaften und Methoden deklariert werden sollten:
class UserController { private $userRepository; public function __construct(UserRepository $userRepository) { $this->userRepository = $userRepository; } } <h4> 4. Kontrollstrukturen </h4> <p>Kontrollstrukturen wie if, for und switch müssen bestimmten Regeln folgen:</p> <ul> <li> <strong>Struktur</strong>: Zwischen dem Steuerschlüsselwort und der öffnenden Klammer muss ein Leerzeichen stehen. Es müssen immer geschweifte Klammern {} verwendet werden, auch bei einzeiligen Anweisungen.</li> <li> <strong>Einrückung</strong>: Alle Blöcke innerhalb von Kontrollstrukturen müssen um eine Ebene (normalerweise vier Leerzeichen) eingerückt werden. </li> </ul> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">if ($user->isAdmin()) { echo "User is an admin"; } else { echo "User is not an admin"; }
Kommentare sind entscheidend, um zu erklären, warum bestimmte Teile des Codes existieren. PSR-12 betont die Notwendigkeit angemessener, klarer Kommentare.
<?php namespace App\Controllers; use App\Models\User; use App\Repositories\UserRepository; class UserController { // Class implementation }
Um PSR-12 in Ihren Projekten zu befolgen, können Sie sich beim Schreiben von Code manuell an die Richtlinien halten. Der beste Weg, die Einhaltung sicherzustellen, ist jedoch die Verwendung automatisierter Tools.
Machen Sie sich zunächst mit diesen allgemeinen Praktiken vertraut:
Manuell sicherzustellen, dass Ihr Code PSR-12 entspricht, kann zeitaufwändig sein, aber es gibt Tools, die Ihnen dabei helfen können, diesen Prozess zu automatisieren.
Eines der beliebtesten Tools, um sicherzustellen, dass Ihr PHP-Code PSR-12 folgt, ist PHP_CodeSniffer. Es analysiert Ihren Code und zeigt auf, wo Sie vom Standard abweichen.
So installieren und verwenden Sie es:
class UserController { private $userRepository; public function __construct(UserRepository $userRepository) { $this->userRepository = $userRepository; } }
Dann führen Sie es mit Ihrem Code aus:
if ($user->isAdmin()) { echo "User is an admin"; } else { echo "User is not an admin"; }
Ein weiteres nützliches Tool ist PHP CS Fixer. Es erkennt nicht nur Probleme, sondern kann Ihren Code auch automatisch so korrigieren, dass er PSR-12 entspricht.
// Fetch user from the repository $user = $userRepository->find($id); /* * If user is not found, throw an exception. * This helps in handling invalid user IDs. */ if (!$user) { throw new NotFoundException(); }
Führen Sie den Fixer aus mit:
composer require "squizlabs/php_codesniffer=*"
Wenn Sie PHPStorm verwenden, können Sie es so konfigurieren, dass es PSR-12 folgt. Gehen Sie zu Einstellungen -> Herausgeber -> Codestil -> PHP und stellen Sie den Standard auf PSR-12 ein.
Beim Befolgen von PSR-12 in Ihren PHP-Projekten geht es um mehr als nur die Einhaltung willkürlicher Regeln. Es geht darum, Ihren Code sauberer, lesbarer und leichter zu warten zu machen – egal, ob Sie alleine oder im Team arbeiten. Wenn Sie PSR-12 befolgen, schreiben Sie nicht nur Code für sich selbst, sondern für die gesamte PHP-Community.
Die Einführung dieses Standards ist ein Schritt hin zum Schreiben von professionellem, konsistentem und wartbarem PHP-Code. Nutzen Sie die genannten Tools, um den Prozess zu vereinfachen, und beobachten Sie, wie sauber und organisiert Ihre Projekte werden!
Viel Spaß beim Codieren!
Das obige ist der detaillierte Inhalt vonPSR verstehen – Der PHP Coding Style Guide. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!