scene('code')->check(['mobile'=> $mobile])){ showJson('error', $validate->getError()); } $smsConfig = config('sms.'); $types = isset($smsConfig['template'])? $smsConfig['template'] : []; $types = $types? array_keys($types) : [0,1]; if(!in_array($type, $types)){ showJson('error', '类型错误'); } switch($type){ case 1: $checkId = db('user')->where(['user_login'=> $mobile])->value('id'); if($checkId){ showJson('error', '手机号已被使用'); } break; case 2: $checkId = db('user')->where(['user_login'=> $mobile])->value('id'); if(empty($checkId)){ showJson('error', '手机号未注册'); } } $code = mt_rand(1001, 9999); $smsOpen = isset($smsConfig['open'])? $smsConfig['open'] : false; if($smsOpen){ $res = Sms::send($mobile, $code, $type); if($res){ showJson('success', '短信验证码发送成功'); }else{ showJson('error', '短信验证码发送失败'); } }else{ Sms::saveCode($mobile, $code, $type); showJson('success', '短信验证码发送成功:'.$code); } } } ?>