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
Freigeben: 2023-04-08 18:54:02
nach vorne
5113 Leute haben es durchsucht

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

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>]...
Nach dem Login kopieren
  • 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
    Nach dem Login kopieren

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

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);
        }
        // ...
    }
Nach dem Login kopieren
_ide_helper.php generieren
$ cd /PATH/TO/LARAVEL_PROJECT
$ php artisan ide-helper:generate
Nach dem Login kopieren

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

Verwandte Etiketten:
php
Quelle:segmentfault.com
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage