试图理解,为什么我无法使用paypal sandox弹出用户平衡。
这是我的AccountBalance.php部分代码,当用户使用paypal付款时
public function rebuildBalance($user_id, $amount, $bonus = 0, $frozen = false, $currency) {
$balance = UserBalance::where('user_id', $user_id)->where('currency_id', $currency)->first();
if ($bonus == 0) {
if ($frozen) {
$balance->balance_frozen += $amount;
} else {
$balance->balance += $amount;
}
} else {
$balance->bonus += $amount;
}
当交易结束时,我从空值
创建了默认对象到此部分$balance->balance += $amount;
Thankx
答案 0 :(得分:2)
这是因为此查询中的$balance
变量为null
:
$balance = UserBalance::where('user_id', $user_id)->where('currency_id', $currency)->first();
弄清楚为什么这个查询不按你想要的方式工作,你应该没问题。一个好的开始是找出$currency
变量的含义 - 并确保在调用rebuildBalance(args)
时正确传递它。
如果您尝试将属性分配给null
,则会收到确切的错误。