В моем проекте 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 остается.
Есть ли способ подавить эту ошибку / предупреждение?