Einige Ideen zu implementieren:
@property Deklarationen zu verlassen barryvdh/laravel-ide-helper Abhängigkeit und seien Sie mit Attributtypen genauer Dieses Psalm -Plugin bringt statische Analysen und Typunterstützung für Projekte mit Laravel mit. Unser Ziel ist es, so viele Typen im Zusammenhang mit Typen wie möglich zu finden, wodurch die Produktivität der Entwickler und die Gesundheit von Anwendungen erhöht werden. Finden Sie Fehler ohne den Aufwand von Schreiben von Tests!

Aufrechterhalten von Versionen:
| Laravel Psalm Plugin | Php | Laravel | Psalm |
|---|---|---|---|
| Master | ^8.1 | 10, 11 | 5 |
| 2.9.x | ^8.0 | 9, 10, 11 | 4, 5 |
| 1.6.x | > = 7,3 | 6, 8 | 4 |
| 1.4.x | > = 7,2 | 6, 7, 8 | 3, 4 |
Weitere Informationen zu den unterstützten PHP-, Laravel- und Psalm -Versionen finden Sie in Veröffentlichungen.
composer require --dev psalm/plugin-laravelWenn Sie das Projekt zuvor nicht verwendet haben, müssen Sie eine Psalm -Konfiguration erstellen:
./vendor/bin/psalm --init./vendor/bin/psalm-plugin enable psalm/plugin-laravelFühren Sie Ihren üblichen Psalm -Befehl aus:
./vendor/bin/psalmSie können die Psalm -Konfiguration mithilfe von XML -Konfigurations- und/oder CLI -Parametern anpassen.
Empfehlung : Verwenden Sie die Basisdatei und erhöhen Sie errorLevel mindestens 4 : Auf diese Weise können Sie weitere Probleme aufnehmen. Schritt für Schritt setzen Sie errorLevel auf 1 und verwenden Sie Psalm und dieses Plugin mit voller Leistung.
Unter der Motorhaube wird nur https://github.com/Barryvdh/laravel-ide-helper ausgeführt und füttert die resultierenden Stubs in Psalm, die PhpStorm-Meta-Stubs lesen können.
Es analysiert auch alle Datenbankmigrationen, die es finden kann, um die Eigenschaftstypen in Ihren Datenbankmodellen zu verstehen.
Beide! Es ist in Ordnung, beide Tools im selben Projekt zu verwenden: Sie verwenden unterschiedliche Ansätze, um Code zu analysieren, und Sie können daher mehr Fehler finden! Psalm und Phpstan verwenden fast gleich die Syntax -Anmerkungen, sodass Sie keine Konflikte haben sollten.