PHP-FIG Coding Standards in PHPStorm einrichten

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:

Abhängigkeiten-Fenster in PHPStorm zur Installation von Composer-Paketen
  1. Geben Sie im Suchfeld „phpcs“ ein.
  2. Suchen Sie in der Ergebnisliste nach dem Eintrag squizlabs/php_codesniffer.
  3. Ergänzen Sie unter Command line parameters den Wert --dev um das Paket nur für Ihre Entwicklungsumgebung zu installieren.
  4. Klicken Sie auf Install.

Das Paket wird dann installiert. Nun muss der CodeSniffer noch konfiguriert werden.

Codesniffer in PHPStorm konfigurieren

  1. Öffnen Sie das Einstellungsfenster von PHPStorm (unter PHPStorm > Preferences…).
  2. Öffnen Sie den Baum Editor und klicken Sie dann auf Inspections.
  3. Im rechten Teil des Fenster suchen Sie dann nach unter PHP > Quality Tools nach dem Eintrag PHP Code Sniffer validation.
  4. Setzen Sie einen Haken (siehe Punkt 3 im Bild unten).
  5. Markieren Sie die Checkbox bei Show sniff name und
  6. wählen Sie unter Coding standard dann den gewünschten Wert aus. Im Bild unten sehen Sie, dass ich dort PSR12 ausgewählt habe.
  7. 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.

Einstellungsfenster von PHPStorm mit den einzelnen Schritt zum Aktivieren des PHP Codesniffers.

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"
  }
}