canvural / phpstan-blade-rule
PHPStan rule for static analysis of Blade templates
Fund package maintenance!
canvural
www.paypal.me/canvural
Installs: 67 530
Dependents: 1
Suggesters: 0
Security: 0
Stars: 56
Watchers: 4
Forks: 5
Open Issues: 6
Type:phpstan-extension
Requires
- php: ^8.0
- illuminate/contracts: ^8.82 || ^9.0
- illuminate/filesystem: ^8.82 || ^9.0
- illuminate/view: ^8.82 || ^9
- phpstan/phpstan: ^1.4.6
- symplify/template-phpstan-compiler: ^10.0.20
Requires (Dev)
- doctrine/coding-standard: ^9.0
- orchestra/testbench: ^6.24 || ^7.0
- phpunit/phpunit: ^9.5
- roave/security-advisories: dev-latest
- symplify/easy-testing: ^10.0
This package is auto-updated.
Last update: 2024-10-14 14:35:27 UTC
README
PHPStan rule for static analysis of Blade templates.
Installation
To use this extension, require it in Composer:
composer require --dev canvural/phpstan-blade-rule
If you also have phpstan/extension-installer installed, then you're all set!
Manual installation
If you don't want to use phpstan/extension-installer
, include extension.neon in your project's PHPStan config:
includes: - vendor/canvural/phpstan-blade-rule/config/extension.neon - vendor/symplify/template-phpstan-compiler/config/services.neon - vendor/symplify/astral/config/services.neon
Configuration
You need to configure paths of views for the rule to scan using templatePaths
config parameter key. Each path should be a relative path to your phpstan.neon
config file.
For example for default Laravel installation, you can configure the paths like so:
parameters: templatePaths: - resources/views
⚠️ The paths you add to templatePaths
should be relative to the root of your app (for example where your vendor
folder is or where your phpstan.neon
is), and should not contain ..
or .
Features
Custom error formatter
We provide custom PHPStan error formatter to better display the template errors. The custom error formatter extends the PHPStan's table error formatter and just adds additional information about template errors to the message.
To use this custom error formatter you need to run PHPStan with --error-format blade
option. For example:
vendor/bin/phpstan analyse src -l8 --error-format blade
Known issues / TODOs
- Custom directives are not supported. Can be supported by custom bootstrap file maybe.
- Blade components are not analyzed. Support for it will come soon.
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Credits
People:
Resources:
- symplify/template-phpstan-compiler
- symplify/twig-phpstan-compiler
- symplify/latte-phpstan-compiler
- symplify/phpstan-latte-rules
License
The MIT License (MIT). Please see License File for more information.