Как я могу предотвратить ошибки lint при проверке, если класс существует - PullRequest
0 голосов
/ 11 февраля 2020

В моем проекте PHP у меня есть следующий код:

if (class_exists('\App\Subscription\Model\Instance')) {
    return new \App\Subscription\Model\Instance();
} else {
    return new \Framework\Subscription\Model\Instance();
}

Класс App\Subscription\Model\Instance не определен, поэтому блок работает как положено и попадает в else.

Однако PhpStorm жалуется на неопределенный класс \App\Subscription\Model\Instance, несмотря на то, что он содержится в проверке class_exists.

Я предполагаю, что он делает это, потому что у него нет контекста относительно того, что передана строка до class_exists есть. На случай, если эта функция ведет себя как языковая структура (аналог isset, et c), я пытался использовать суффикс ::class, пока он компилировался, ошибка linter остается.

Есть ли способ подавить эту ошибку / предупреждение?

...