Ви коли-небудь випускали шаблон Blade для виробництва, в якому випадково була відсутня змінна або метод, який мав помилку? Ви хотіли уникнути пошуку спокусливих помилок у виробництві? Що ж, перегляньте Bladestan, автор ректора, який додає статичний аналіз у PHPStan для шаблонів Blade.
— Tomas Votruba (@VotrubaT) March 24, 2023
Цей пакет знаходить усі виклики перегляду та перевіряє, чи мають візуалізовані змінні дійсну поведінку в наданому шаблоні. Наприклад, він перевірить шлях до файлу шаблону та переконається, що він існує, перевірить змінні, відтворить шаблон та перевірить будь-які порушення за допомогою налаштування PHPStan.
Ось приклад з публікації автора в блозі Введення Bladestan:У наведеному вище прикладі PHPStan поверне наступний звіт:
@foreach($posts as $post)
{{ $post->getContet() }}
@endforeach
log.blade.php:17
rendered in: app/Http/Controllers/BlogController.php:20
--------------------------------------------------------------
- '#Call to an undefined method App\\Entity\\Post\:\:getContet\(\)#'
Bladestan подбає про все, що вам потрібно, щоб статично перевірити ваші шаблони лез, і використовує ваші існуючі налаштування PHPStan, включаючи Larastan.
Для початку з Bladestan ви можете отримати інструкції з встановлення та налаштування з репо GitHub.