問題
最近、PHPStan を使用してLaravelプロジェクトのコードを分析し始めましたが、すべての .xml で次のエラーが引き続き発生しますmodels
。
------ --------------------------------------------------------------------
Line Models/Fund.php
------ --------------------------------------------------------------------
14 PHPDoc tag @mixin contains unknown class App\Models\IdeHelperFund.
Learn more at https://phpstan.org/user-guide/discovering-symbols
------ --------------------------------------------------------------------
コード
エラーをトリガーするコードは次のとおりです。
<?php
namespace App\Models;
/**
* Class Fund
*
* @package App\Models
* @mixin IdeHelperFund
*/
class Fund extends Model
{
//...
}
これは、 Laravel IDE ヘルパーパッケージに
必要なmixin
コマンドを実行することで追加されます。このパッケージは、名前が示すように、IDE がLaravelの魔法のメソッドをタイプヒントするための docblock を追加します。php artisan ide-helper:models -M
そこで、次のコードを使用してエラーを無視してこれを解決しようとしました。
includes:
- ./vendor/nunomaduro/larastan/extension.neon
parameters:
paths:
- app
# The level 8 is the highest level
level: 5
ignoreErrors:
-
message: '#PHPDoc tag @mixin contains unknown class App\\Models\\IdeHelper(.*)+\.#'
path: Models/*
excludePaths:
checkMissingIterableValueType: false
しかし、どういうわけか、Regexr で正規表現をテストしているときにエラーが一致しません。
私が間違っていることは何か提案はありますか? 正規表現の最初と最後に追加されたエラーを無視するドキュメントで気づいた#
ので、それをphpstan構成に追加しましたが、これが必要かどうかはわかりませんが、それらがないと次のエラーが発生します(だから私はそれらを残しました):
-- ------------------------------------------------------------------------------------------------------------------------------------
Error
-- ------------------------------------------------------------------------------------------------------------------------------------
Delimiter must not be alphanumeric or backslash in pattern: PHPDoc tag @mixin contains unknown class App\\Models\\IdeHelper(.*)+\.
-- ------------------------------------------------------------------------------------------------------------------------------------
追加情報
デフォルトのララスタンバージョン0.7.12
拡張機能を使用しています。