PSR verstehen – Der PHP Coding Style Guide

Susan Sarandon
Freigeben: 2024-10-22 06:11:31
Original
626 Leute haben es durchsucht

Understanding PSR- The PHP Coding Style Guide

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.

Inhaltsverzeichnis

  1. Was ist PSR-12?
  2. Warum ist PSR-12 wichtig?
  3. Schlüsselregeln von PSR-12
    • Dateistruktur
    • Namespaces und Nutzungserklärungen
    • Klassen und Methoden
    • Kontrollstrukturen
    • Kommentare und Dokumentation
  4. So wenden Sie PSR-12 in Ihren PHP-Projekten an
  5. Tools, die Ihnen helfen, PSR-12 zu befolgen
  6. Abschließende Gedanken

Was ist PSR-12?

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.

Warum ist PSR-12 wichtig?

Bei Codierungsstandards wie PSR-12 geht es nicht nur darum, Leerzeichen und Tabulatoren zu ignorieren. Deshalb sind sie wichtig:

  • Lesbarkeit: Code, der einem Standardstil folgt, ist leichter zu lesen, insbesondere für Entwickler, die neu in einem Projekt sind.
  • Zusammenarbeit: Wenn alle die gleichen Regeln befolgen, wird die Zusammenarbeit reibungsloser und effizienter.
  • Wartbarkeit: Sauberer, konsistenter Code lässt sich im Laufe der Zeit einfacher debuggen, testen und erweitern.
  • Interoperabilität: In Open-Source-Projekten oder bei der Integration von Bibliotheken von Drittanbietern gewährleistet die Befolgung eines gemeinsamen Standards die Kompatibilität über verschiedene Codebasen hinweg.

Schlüsselregeln von PSR-12

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.

1. Dateistruktur

  • Öffnendes Tag: PHP-Dateien müssen das
  • Kodierung: Dateien müssen in UTF-8 ohne BOM (Byte Order Mark) kodiert werden.
  • Zeilenlänge: Zeilen sollten nicht länger als 120 Zeichen sein, Zeilen mit bis zu 80 Zeichen werden jedoch bevorzugt.
  • Leerzeilen: Nach dem öffnenden PHP-Tag oder vor dem schließenden Tag sollten keine Leerzeilen stehen. Darüber hinaus muss vor Rückgabeanweisungen und zwischen Methodendefinitionen eine einzelne Leerzeile stehen.

2. Namespaces und Nutzungsdeklarationen

PSR-12 verlangt, dass Namespaces und Nutzungsdeklarationen einer bestimmten Reihenfolge folgen, um die Klarheit zu verbessern:

  • Namespace-Deklaration: Die Namespace-Deklaration muss die erste Zeile nach dem öffnenden PHP-Tag sein. Nach dem Namespace muss eine Leerzeile stehen.
  • Verwendungsdeklarationen: Alle Nutzungsdeklarationen müssen nach der Namespace-Deklaration gruppiert und durch eine Leerzeile getrennt werden. Außerdem muss nach der letzten Verwendungsanweisung eine Leerzeile stehen.

Beispiel:

<?php

namespace App\Controllers;

use App\Models\User;
use App\Repositories\UserRepository;

class UserController {
    // Class implementation
}
Nach dem Login kopieren
Nach dem Login kopieren

3. Klassen und Methoden

PSR-12 erzwingt einige strenge Regeln, wie Klassen, Eigenschaften und Methoden deklariert werden sollten:

  • Klassendeklaration: Auf das Klassenschlüsselwort muss ein Leerzeichen und dann der Klassenname folgen. Offene geschweifte Klammern { müssen in derselben Zeile wie die Klassendeklaration platziert werden, schließende Klammern } in einer eigenen Zeile.
  • Eigenschaften: Die Sichtbarkeit (öffentlich, geschützt, privat) muss für alle Eigenschaften angegeben werden.
  • Methoden: Ähnlich wie bei Klassendeklarationen muss auf das Funktionsschlüsselwort ein Leerzeichen und dann der Methodenname folgen. Die Sichtbarkeit muss für alle Methoden deklariert werden.
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";
}
Nach dem Login kopieren
Nach dem Login kopieren

5. Kommentare und Dokumentation

Kommentare sind entscheidend, um zu erklären, warum bestimmte Teile des Codes existieren. PSR-12 betont die Notwendigkeit angemessener, klarer Kommentare.

  • Kommentare blockieren: Verwenden Sie /* */ für mehrzeilige Kommentare und platzieren Sie eine Leerzeile vor dem Kommentar.
  • Einzeilige Kommentare: Verwenden Sie // für Inline-Kommentare und stellen Sie sicher, dass Kommentare aussagekräftig sind.
<?php

namespace App\Controllers;

use App\Models\User;
use App\Repositories\UserRepository;

class UserController {
    // Class implementation
}
Nach dem Login kopieren
Nach dem Login kopieren

So wenden Sie PSR-12 in Ihren PHP-Projekten an

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:

  • Konsistente Einrückung verwenden: Für die Einrückung sind vier Leerzeichen erforderlich.
  • Zeilenlänge begrenzen: Versuchen Sie, Ihre Zeilen unter 120 Zeichen zu halten, obwohl 80 Zeichen für eine bessere Lesbarkeit bevorzugt werden.
  • Codestruktur organisieren: Befolgen Sie die Regeln für Klassendeklarationen, Sichtbarkeit und Kontrollstrukturen.

Tools, die Ihnen helfen, PSR-12 zu befolgen

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.

1. PHP_CodeSniffer

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;
    }
}
Nach dem Login kopieren

Dann führen Sie es mit Ihrem Code aus:

if ($user->isAdmin()) {
    echo "User is an admin";
} else {
    echo "User is not an admin";
}
Nach dem Login kopieren

2. PHP CS Fixer

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();
}
Nach dem Login kopieren

Führen Sie den Fixer aus mit:

composer require "squizlabs/php_codesniffer=*"
Nach dem Login kopieren

3. PHPStorm

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.

Letzte Gedanken

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!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage