Heim >Backend-Entwicklung >PHP-Tutorial >Verwenden Sie PHPStan, um die Qualität des PHP-Codes zu verbessern

Verwenden Sie PHPStan, um die Qualität des PHP-Codes zu verbessern

Guanhui
Guanhuinach vorne
2020-06-08 09:14:205097Durchsuche

Verwenden Sie PHPStan, um die Qualität des PHP-Codes zu verbessern

Hier stellen wir ein statisches Analysetool für PHP-Code vor: PHPStan, das den Code nicht ausführen muss, sondern auch eine strikte Syntaxerkennung für den Code durchführen und versuchen kann, den Code zu minimieren Lauffehlerrate.

PHPStan

Installation

Derzeit erfordert PHPStanV0.10.2 die Systemumgebung PHP Version ist mindestens 7.1. Global mit Composer installieren:

$ composer global require phpstan/phpstan

Verwenden Sie

Die statische PHPStan-Analyse ist sehr einfach zu verwenden:

$ phpstan analyse [-c|--configuration CONFIGURATION] [-l|--level LEVEL] [--no-progress] [--debug] [-a|--autoload-file AUTOLOAD-FILE] [--errorFormat ERRORFORMAT] [--memory-limit MEMORY-LIMIT] [--] [<paths>]...
  • Konfiguration: Ausführen Pfad zur Konfigurationsdatei;

  • Stufe: streng, 0-7, je größer, desto strenger

  • kein Fortschritt: Es wird kein Fortschritt angezeigt.

  • debug: Debug-Modus;

  • errorFormat: Fehlerformat;
  • memory-limit: Speicherlimit;
  • paths: zu analysierende Dateipfade.
  • Analysieren Sie beispielsweise eine PHP-Datei:
  • $ phpstan analyse --level=7 --autoload-file=/PATH/TO/vendor/autoload.php /PATH/TO/someone.php

    PHPStan in VSCode

Natürlich sollte die Syntaxanalyse erfolgen Vom Editor ausgeführt Nach dem Schreiben des Codes ist es zu umständlich, zum Befehlsterminal zu wechseln, um phpstan auszuführen. Daher wird hier eine VSCode-Erweiterung empfohlen: PHP Static Analysis.

PHP Static Analysis

Verwenden Sie zunächst Composer, um PHPStan global zu installieren. Suchen Sie dann in der Erweiterungsverwaltung nach PHP Static Analysis Installieren Sie bei VSCode die erste passende Erweiterung. Nach dem erneuten Laden des VSCode-Neuladefensters analysiert die Erweiterung automatisch die unter VSCode geöffnete PHP-Datei.

Betriebseffekt:

Verwenden Sie PHPStan, um die Qualität des PHP-Codes zu verbessern

Zum Beispiel wird eine Variable deklariert, aber nicht aufgerufen, eine nicht deklarierte Variable wird aufgerufen, eine undefinierte Methode wird aufgerufen usw. In Auf diese Weise werden Fehler erkannt.

Um es locker auszudrücken: Die Methode $this->array() existiert tatsächlich, sie wird jedoch durch die magische Methode __call() implementiert.

Verwenden Sie PHPStan, um die Qualität des PHP-Codes zu verbessern

PHPStan mit Laravel __call() oder __callStatic().

Viele Anwendungs-Frameworks verwenden viele magische Methoden für Eleganz, wie zum Beispiel Laravel.

Die Verwendung von PHPStan zur Erkennung von Laravel-Projekten meldet natürlich viele Fehler beim Aufruf nicht deklarierter Klassenmethoden. Für dieses Problem können Sie Laravel-Ide-Helfer verwenden, um Fehlalarme zu reduzieren.

Laravel-ide-helper installieren

$ cd /PATH/TO/LARAVEL_PROJECT
$ composer require barryvdh/laravel-ide-helper

LaravelIdeHelper injizieren

Bearbeiten Sie die Registrierung in app/Providers/AppServiceProvider.php Methode:

<?php
    ...
    public function register()
    {
        if ($this->app->environment() !== &#39;production&#39;) {
            $this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
        }
        // ...
    }
_ide_helper.php generieren
$ cd /PATH/TO/LARAVEL_PROJECT
$ php artisan ide-helper:generate

Zu diesem Zeitpunkt werden die Facade-Klasse im Laravel-Framework und die ursprünglich über __callStatic() erhaltenen statischen Methoden alle in _ide_helper.php deklariert Die Datei _ide_helper.php, wenn PHPStan Laravel-Projektcode erkennt, kann Fehlalarme reduzieren.

PHPStan-Konfiguration

Erstellen Sie im Stammverzeichnis des Laravel-Projekts eine neue phpstan.neon-Datei:

parameters:
    autoload_files:
        - %currentWorkingDirectory%/_ide_helper.php

Im Stammverzeichnis des Laravel-Projekt, ausführen Wenn Sie den Befehl phpstan ausführen, wird automatisch die Konfiguration phpstan.neon verwendet.

Empfohlenes Tutorial: „

PHP

Das obige ist der detaillierte Inhalt vonVerwenden Sie PHPStan, um die Qualität des PHP-Codes zu verbessern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen