rel*_*89n 7 php phpstorm laravel
我有\App\Console\Kernel从供应商类别延伸的类别\Illuminate\Foundation\Console\Kernel。在供应商类中,有$commands受保护的属性,没有类型声明,因此在我自己的类中,我无法声明属性类型。
protected $commands = [
// commands ...
];
Run Code Online (Sandbox Code Playgroud)
但 PhpStorm 给了我下一个错误:
缺少属性的类型声明
检查信息:报告没有类型声明的属性。
该怎么办?
您可以PHP 7.4在属性上声明类型。因此,您可以像这样声明您的属性,将其硬输入到数组中。
protected array $commands = [];
Run Code Online (Sandbox Code Playgroud)
Laravel向后兼容PHP 7.1.3或7.2.5取决于版本Laravel,因此没有实现这一点,因此某些处理继承的类不能在模型上执行此操作,我记得fillable等等guarded。正如您所描述的那样,也适用于您的情况。
检查PHPStorm只是一个建议,并没有破坏,它只是试图让您使用PHP 7.4功能,如果您没有运行,7.4我建议设置PHPStorm为正确的版本PHP。