PHP(Laravel)での開発をしていて、PHPStanが導入されているのですが、自分用にLevelなどカスタマイズして、品質をあげて最終的に全体反映できたらいいなと思ってましたのでそのときの備忘録。
※該当プロジェクトにすでにphpstanがインストール済みを前提としています。
1.ディレクトリを作成
プロジェクトディレクトリ
├ phpstan-local ← ディレクトリを作成
├ app ← アプリケーションコード
├ vendor
├ public
... etc
2.phpstan.neonを作成
プロジェクトディレクトリ
├ phpstan-local
├ phpstan.neon
includes:
- ../vendor/nunomaduro/larastan/extension.neon //phpstan.neonから見たLarastanのファイル
parameters:
paths: //対象のディレクトリ
- ../app
- ../tests
- ../database
- ../routes
- ../resources
excludePaths: //除外ディレクトリ
- ../app/config*
level: max // phpstanのLevel
PHPStan Level
https://phpstan.org/user-guide/rule-levels
3..git/info/excludeを作成してローカル設定のみでGitの対象から除外する
vi .git/info/exclude
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
laravel/local-phpstan/