在phpstorm中调用变量类名的静态方法时如何避免检查警告?

问题描述 投票:0回答:1

当我打电话时:

$class_name = '\App\Models\User';
$class_name::create($attributes);

PhpStorm 显示检查警告“在字符串中找不到方法‘create’”。

我不想关闭此检查,因为它在其他情况下非常有用。是否有其他方法可以避免警告,使用注释或其他方法?

php phpstorm
1个回答
0
投票

您在 PhpStorm 中看到的警告可能是由于 PhpStorm 静态分析代码,当您使用字符串表示类名时,PhpStorm 无法推断实际的类,因此不会识别与该类关联的方法。

为了缓解这种情况,您可以使用 PHPDoc 注释:

/** @var \App\Models\User $class */ $class = '\App\Models\User';

$class::create($attributes);

你可以尝试一下吗?

© www.soinside.com 2019 - 2024. All rights reserved.