Statická analýza (PHPStan)
Makro existuje až po boote service providera — a ten PHPStan nikdy nespúšťa — takže $table->morphKey(...) by v Larastane inak skončilo chybou „undefined method“. Toolkit preto dodáva PHPStan rozšírenie, ktoré makrá deklaruje staticky:
- stubs/BlueprintMacros.stub — štyri Blueprint makrá.
- RoundlyConsulting\PackageToolkit\PHPStan\QueryMacrosExtension — makro whereLikeEscaped() na query a Eloquent builderi. Obe triedy builderov už opisujú vlastné stub súbory Larastanu a použije sa len jeden stub na triedu, preto sa tieto makrá dopĺňajú cez reflexiu.
Obe sú zaregistrované v extension.neon, ktorý phpstan/extension-installer načíta automaticky — nič nekonfigurujete. Bez installera ho pridajte ručne:
includes:
- vendor/roundly-consulting/package-toolkit-for-laravel/extension.neonPre úplnosť, toto extension.neon registruje:
parameters:
stubFiles:
- stubs/BlueprintMacros.stub
services:
-
class: RoundlyConsulting\PackageToolkit\PHPStan\QueryMacrosExtension
tags:
- phpstan.broker.methodsClassReflectionExtensionPrejavte lásku k open source
Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.
Ďalšie spôsoby podpory vrátane kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
Chcete to zabudovať do svojho produktu?
Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.