0

OXID 6 eshop で静的 PHP コード分析を実行しようとしています。

ただし、これに関してはレンガの壁にぶつかっています。

実行するvendor/bin/phpstan analyse --configuration phpstan.neon source/modules/myvendor/mymoduleと、常に次のようなエラーが発生しClass mynamespace\Article_parent not foundます。

これはおそらく、Oxid では eshop クラスが直接上書きされず、代わりに次のように宣言されているためです。

<?php
namespace mynamespace;

class Article extends Article_parent
{
...

そしてmetadata.php、上書きされたクラスが定義されています:

'extend' => [
        \OxidEsales\Eshop\Application\Model\Article::class => \mynamespace\Article::class,
    ],

Phpstan はこれを解決できないようです。このような多くの異なる構成ファイルを試しました。

parameters:
    level: max
    inferPrivatePropertyTypeFromConstructor: true
    autoload_files:
        - vendor/oxid-esales/oxideshop-ce/source/oxfunctions.php
        - vendor/oxid-esales/oxideshop-ce/source/overridablefunctions.php

またはこれ

parameters:
    level: 7
    autoload_files:
    - vendor/oxid-esales/testing-library/base.php
    - vendor/oxid-esales/oxideshop-ce/source/oxfunctions.php
    - vendor/autoload.php

しかし、役に立たない。どうすればphpstanを動作させることができますか?

4

2 に答える 2