【发布时间】:2020-03-27 09:26:39
【问题描述】:
我需要将模型传递给函数,但似乎我的解决方案不正确,因为我从 PHPStorm 收到以下错误
期望 Illuminate\Database\Eloquent\Model 类型的参数,字符串给定。
这是我的代码的摘录:
/** Return the model structure
*
* @param \Illuminate\Database\Eloquent\Model $model
* @param array $fillData
* @return object
*/
public static function fillBasicModelData(Model $model, $fillData){
...code...
}
下面是我如何调用函数:
$result = self::fillBasicModelData(Filter::class, $emptyFilter);
显然 Filter 是一个 Illuminate\Database\Eloquent\Model
所以我的问题是如何在没有此警告的情况下将模型传递给函数?
谢谢
【问题讨论】:
-
你应该传递一个类对象,而不是类名。
-
谢谢,这可以是一个很好的解决方案还是有更好的方法? $model = 新过滤器; $result = self::fillBasicModelData($model, $emptyFilter);
-
试试 $result = self::fillBasicModelData((new Filter()), $emptyFilter);