In diesem Blogpost möchte ich beschreiben, wie Sie Coding-Standards von PHP-FIG in PHP-Storm einrichten. Dabei ist es egal, ob Sie PSR1, PSR2 oder das neuere (zum derzeitigen Stand nicht freigegebene) PSR12 nutzen wollen.
Dieses Tutorial beschreibt alles anhand eines Mac-Systems. Auf einem Linux-System dürfte es ähnlich aussehen. Auf Windows-System wahrscheinlich deutlich anders.
Composer einrichten
Das erste, was Sie machen sollten ist, Composer in PHPStorm einzurichten. Auf einem Windows-System können Sie der englischen Anleitung von Composer folgen.
Wie Sie Composer in PHPStorm einrichten (Mac) habe ich schon einmal beschrieben. Folgen Sie dem Tutorial auf der verlinkten Seite um das nachzuholen, falls noch nicht geschehen.
PHPCS Paket via Composer installieren
Nun öffnen Sie den Paket-Manager in PHPStorm wie folgt. Wählen Sie im Menü Tools > Composer > Manage dependencies…
Danach öffnet sich ein Fenster, das ungefähr wie folgt aussieht:
- Geben Sie im Suchfeld “phpcs” ein.
- Suchen Sie in der Ergebnisliste nach dem Eintrag squizlabs/php_codesniffer.
- Ergänzen Sie unter Command line parameters den Wert
--dev
um das Paket nur für Ihre Entwicklungsumgebung zu installieren. - Klicken Sie auf Install.
Das Paket wird dann installiert. Nun muss der CodeSniffer noch konfiguriert werden.
Codeniffer Pfad festlegen
Nun muss PHPStorm mitgeteilt werden, wo sich die ausführbare Codesniffer-Datei befindet. Das geht wie folgt:
- Öffnen Sie das Einstellungsfenster von PHPStorm (unter PHPStorm > Preferences…).
- Öffnen Sie den Baum Languages & Frameworks > PHP > Quality Tools.
- Im rechten Teil des Fenster legen Sie unter dem Bereich “Code Sniffer” fest, wo sich die Datei befindet. Dazu müssen Sie auf den Button mit den drei Punkten klicken.
- Im darauf folgenden Fenster geben Sie unter PHP Code Sniffer Path den Pfad zur Datei an. Das ist in der Regel
vendor/bin/phpcs
im Verzeichnis, indem Sie den Composer ausgeführt haben. - Ein Klick auf OK schließt das Fenster.
- Dann geht’s mit dem nächsten Schritt weiter (siehe unten).
Codesniffer in PHPStorm konfigurieren
- Öffnen Sie das Einstellungsfenster von PHPStorm (unter PHPStorm > Preferences…) falls es nicht mehr geöffnet ist.
- Öffnen Sie den Baum Editor und klicken Sie dann auf Inspections.
- Im rechten Teil des Fenster suchen Sie dann nach unter PHP > Quality Tools nach dem Eintrag PHP Code Sniffer validation.
- Setzen Sie einen Haken (siehe Punkt 3 im Bild unten).
- Markieren Sie die Checkbox bei Show sniff name und
- wählen Sie unter Coding standard dann den gewünschten Wert aus. Im Bild unten sehen Sie, dass ich dort PSR12 ausgewählt habe.
- Klicken Sie auf OK um die Änderungen zu übernehmen.
Randnotiz: Wenn das Dropdown-Menü keine Auswahlmöglichkeit bietet, klicken Sie einfach auf den kleinen Reload-Button dahinter.
Wenn Sie den PHP Codesniffer individueller konfigurieren wollen, werfen Sie einen Blick auf die englische Anleitung von Jetbrains.
Konfiguration des Composers
Sie können Informationen über die standardmäßigen und benutzerdefinierten PHP Code Sniffer-Regelsätze in den Skriptbereich der composer.json
-Datei aufnehmen. Wenn Sie Projektabhängigkeiten installieren oder aktualisieren, werden die angegebenen Regelsätze erkannt und die PHP Code Sniffer Validierungsprüfung wird automatisch aktiviert.
Ergänzen Sie die Datei wie folgt:
{
"name": "floriansimeth/php-fig-cs-example",
"description": "Ultricies Tortor Tellus",
...
"require-dev": {
"squizlabs/php_codesniffer": "3.4.2"
},
"scripts": {
"phpcs": "phpcs --standard=PSR12"
}
}