こんにちは Naka です。
本記事ではPHPStanのカスタムルールについて解説します。
PHPStanを導入すると、普段の開発では見逃してしまいがちな型の不整合や設計上の問題を、コードを実行することなく検出できるようになります。LaravelやSymfonyなどのフレームワークと組み合わせて使っている方も多いでしょう。一方で、PHPStanを使い込んでいくと、次のような要望が出てくることがあります。
こうした チームやプロジェクト固有のコーディング規約 は、PHPStanの標準ルールだけでは表現できません。そこでPHPStanは、カスタムルールを作成する手段 を提供しています。
本記事では、PHPStanの内部構造を理解した上で、実際に以下の4つのカスタムルールを実装する方法 を解説します。
PHPStanを「使うだけ」から一歩進めて、「自分たちのルールを組み込む」ための入門として読んでもらえれば幸いです。
PHPStanは、PHPコードを実行せずに解析する 静的解析ツール です。実行結果ではなく、ソースコードそのものの構造や型情報を元に、問題点を検出します。例えば、PHPStanは次のような問題を見つけることができます。