/** * 给用户发送验证码 * @method send_sms_code($phone,$code,$type) * * @author NewFuture * * @param $phone 手机码 * @param $type 类型 * @return string 返回号码 */ function send_sms_code($phone, $type) { $info = S($type . $phone); if ($info) { if ($info['times'] > 5) { \Think\Log::record('手机号验证发送失败:ip:' . get_client_ip() . ',phone:' . $phone); return 0; } else { $code = $info['code']; $info['times'] = $info['times'] + 1; } } else { $code = random(6, 'N'); $info['code'] = $code; $info['times'] = 0; $info['tries'] = 0; } S($type . $phone, $info, 600); $SMS = new \Vendor\Sms(); switch ($type) { case 'bind': return $SMS->bindPhone($phone, $code); break; case 'findPwd': return $SMS->findPwd($phone, $code); break; default: E('unknow sms type '); } }