- @phpstan-ignore-line
- @phpstan-ignore-next-line
- @phpstan-ignore [error identifier]
- エラー識別子 (error identifier) の確認方法
- 参考
PHPStan のエラーを無視したい時があると思います。
例えば、局所的に使われる private メソッドについて PHPDoc を書くコストが高いので避けたい場合です。
もちろん、可能な限り ignore しないのが理想です。これが public メソッドの場合、複雑な形式の array を返すのではなく、レスポンスのクラスを定義するべきです。
また、本当は ignore したくないエラーまで巻き込まれて ignore されてしまい、見逃してしまうこともあります。
PHPStan のドキュメントの Ignoring Errors を見ると、エラーを ignore する方法についていくつか書いてあります。
@phpstan-ignore-line
<?php echo $foo; // @phpstan-ignore-line
@phpstan-ignore-next-line
<?php // @phpstan-ignore-next-line echo $foo;
@phpstan-ignore [error identifier]
例
<?php // @phpstan-ignore variable.undefined echo $foo; echo $foo; // @phpstan-ignore variable.undefined
エラー識別子 (error identifier) の確認方法
PHPStan 1.11 以降、 phpstan analyze -v
のように -v オプションを付与すると、結果にエラー識別子が表示されるようになっています。
------ -------------------------------------------------------------------------------------- Line SampleRepository.php ------ -------------------------------------------------------------------------------------- 88 Access to an undefined property object::$something. 🪪 property.notFound 💡 Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property ------ --------------------------------------------------------------------------------------
この場合 property.notFound
が識別子です