where([ 'user_id' => $user_id, 'stype' => $stype, 'sid' => $sid ])->first(); if (!$old) { $old = new UserTime(); $old->user_id = $user_id; $old->stype = $stype; $old->sid = $sid; } $old->number += $times; $old->save(); // dump($old->stype,$stype); return $old->number; } /** * 检查是否超过限制 * @param $user_id * @param $stype * @param $sid * @param $times * @return bool */ static public function check($user_id, $stype, $sid, $times) { $old = UserTime::query()->where([ 'user_id' => $user_id, 'stype' => $stype, 'sid' => $sid ])->first(); if (!$old) { return true; } if ($old->number >= $times) { return false; } return true; } }