概要
Laravelで静的解析を行うツールに、『LaraStan』というものがあります。
元々PHP用の静的解析ツールでPHPStanというものがあり、こちらのLaravel用ライブラリになります。
このLaraStanの導入と実行までを以下の3ステップで完了することができます。
(静的解析とは:コードを実行せずに解析を行うこと。コーディングルールチェックや、制御フローの解析、脆弱性の検出などが行える。)
インストール
composer require --dev nunomaduro/larastan
設定ファイル
laravel/phpstan.neon
includes:
- ./vendor/nunomaduro/larastan/extension.neon
parameters:
paths:
- app # The level 8 is the highest level
level: 5
ignoreErrors:
# Eloquent関連
- '#Access to an undefined property App\\Models(.*)#'
excludes_analyse:
- ./*/*/FileToBeExcluded.php
checkMissingIterableValueType: false
その他のオプションはPHPStanのドキュメントから確認できます。
https://github.com/phpstan/phpstan
実行
./vendor/bin/phpstan analyse
実行すると以下のようにエラー数とエラーファイル名、行数、エラー概要が表示されます。
もしエラーにAllowed memory size exhaustedが含まれて、処理が途中で中断される場合は、実行コマンドに--memory-limitオプションを付与することでメモリーサイズを変更できます。
./vendor/bin/phpstan analyse --memory-limit=2G
The following two tabs change content below.