Example #1
0
 /**
  * 发送短息
  */
 public function sendSmsAction()
 {
     $vars = ['pho_phone', 'sign'];
     //获取数据
     list($pho_phone, $sign) = \Verify::getQuery($vars);
     //验证参数
     if (\Verify::getMessage()) {
         $this->throwMessage(PARAMETER_FAIL, \Verify::getMessage());
     }
     //验证签名
     if (!$this->verifySign($pho_phone, $sign)) {
         $this->throwMessage(ILLEGAL_SIGN);
     }
     //发送验证码
     $pho_code = mt_rand(100000, 999999);
     $send_status = \Func::sendSMS($pho_phone, $pho_code);
     if ($send_status != OK) {
         $this->throwMessage($send_status);
     }
     //记录验证码
     $this->throwMessage((new \Member())->addPhoneLog($pho_phone, $pho_code), ['pho_code' => $pho_code]);
 }
Example #2
0
 /**
  * 获取变量,并执行验证参数,验证签名
  * @param array $vars 包含参数名称的数组
  * @param string $type 获取变量的方式
  * @return array $data
  */
 protected function beforeGetVarExecVerify($vars, $type = 'get')
 {
     //选择取值方式
     $data = [];
     switch ($type) {
         case 'get':
             $data = \Verify::getQuery($vars);
             break;
         case 'post':
             $data = \Verify::getPost($vars);
             break;
         case 'request':
             $data = \Verify::get($vars);
             break;
     }
     //验证参数
     if (\Verify::getMessage()) {
         $this->throwMessage(PARAMETER_FAIL, \Verify::getMessage());
     }
     //赋值
     foreach ($vars as $key => $val) {
         $this->data[$val] = $data[$key];
     }
     //验证签名
     $this->beforeVerify();
     return $this->data;
 }