alidayu = Alidayu_Lite::getInstance(); } /** * 路由规则 * @return [type] [description] */ public function getRules(){ return array( 'sms' => array( 'phone' => array( 'name' => 'phone', 'type' => 'string', 'require' => true, 'desc' => '注册手机号' ), 'type' => array( 'name' => 'type', 'type' => 'string', 'require' => true, 'desc' => '短信发送类型[register:注册短信,resetPwd:重置密码短信]' ) ), ); } /** * 发送短信接口 * @desc 发送注册短信 * @return bool code 操作码,0表示成功, 1表示失败 * @return string msg 返回提示 */ public function sms(){ $rs = array('code' => 0, 'msg' => ''); $sms_service = new Domain_SmsCode(); $promit_scene = array('register', 'resetPwd'); if(in_array($this->type, $promit_scene)){ $scene = $this->type; if($sms_service->check($this->phone, $scene)){ $code = Common_Util::random(6, 1); $send_json_data = json_encode(array('mobile_validate' => $code)); if($this->alidayu->send($this->phone, $send_json_data, $scene)){ $data = array(); $time = time(); $data['phone'] = $this->phone; $data['code'] = $code; $data['create_time'] = date('Y-m-d H:i:s', $time); $data['expire_time'] = date('Y-m-d H:i:s', $time + 60); $data['scene'] = $scene; $data['status'] = 0; $sms_service->add($data); $rs['msg'] = '发送成功'; } else{ $rs['code'] = 1; $rs['msg'] = '发送失败'; } } else{ $rs['code'] = 1; $rs['msg'] = '请勿重复发送短信,间隔时间60秒'; } } else{ $rs['code'] = 1; $rs['msg'] = '非法的短信类型'; } return $rs; } }