我不知道如何修复这个错误,我的代码:
$subscriptions = Auth::user()->subscriptions;
foreach($subscriptions as $subscription)
{
$subs = Subscription::find($subscription->id);
$subs->subscriptionstatus_id = 0;
$subs->save();
}
当我分配0
时,行中有Creating default object from empty value
的laravel响应,我能做什么?
感谢
当您尝试设置null
值的属性时,会出现该错误。例如,
$obj = null;
$obj->prop = 0; // Creating default object from empty value
因此,您的find()
语句似乎返回了null
,这意味着您没有要查找的id为的Subscription
。
这是因为变量$subs
为null,需要检查是否有内容:
$subscriptions = Auth::user()->subscriptions;
foreach($subscriptions as $subscription)
{
$subs = Subscription::find($subscription->id);
// Check if exist the subs record
if (count($subs) > 0)
{
$subs->subscriptionstatus_id = 0;
$subs->save();
}
}
我补充说,验证和工作都很好。