当前位置:Gxlcms > PHP教程 > 短信验证码谁会

短信验证码谁会

时间:2021-07-01 10:21:17 帮助过:14人阅读

网站有API 现在只有一个前台页面 求教我PHP该怎么写? 以前从没接触过,谁会的话加我QQ804135715 解决一下 更想拜个师傅


回复讨论(解决方案)

没用过 你看看短信服务商提供的api接口
应该是有demo

www.yuntongxun.com的短信验证码,速度挺快,平均8秒左右。以下是类文件

AccountSid = $accountsid; 	   $this->AccountToken = $accounttoken;	   $this->AppId = $appid;	   $this->TemplateId = $tempid;	   $this->Batch = date('YmdHis',time());	}	/**	 * 发送短信	 */ 	public function sendMsg($to,$datas)    {        // 拼接请求包体        $data="";        for($i=0;$iTemplateId."','appId':'$this->AppId','datas':[".$data."]}";              // 大写的sig参数         $sig =  strtoupper(md5($this->AccountSid . $this->AccountToken . $this->Batch));        // 生成请求URL                $url="https://$this->ServerIP:$this->ServerPort/$this->SoftVersion/Accounts/$this->AccountSid/SMS/TemplateSMS?sig=$sig";        // 生成授权:主帐户Id + 英文冒号 + 时间戳。        $authen = base64_encode($this->AccountSid . ":".$this->Batch);        // 生成包头          $header = array("Accept:application/json","Content-Type:application/json;charset=utf-8","Authorization:$authen");        // 发送请求        $result = $this->curl_post($url,$body,$header);        $datas=json_decode($result);         /*         if($datas == FALSE){           $datas = new stdClass();           $datas->statusCode = '172003';           $datas->statusMsg = '返回包体错误';         }		*/        //重新装填数据        if($datas->statusCode==0){           $datas->TemplateSMS =$datas->templateSMS;           unset($datas->templateSMS);           }        return $datas;     } 		/**     * 发起HTTPS请求     */    private function curl_post($url,$data,$header,$post=1)    {       //初始化curl       $ch = curl_init();       //参数设置         $res= curl_setopt ($ch, CURLOPT_URL,$url);         curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);       curl_setopt ($ch, CURLOPT_HEADER, 0);       curl_setopt($ch, CURLOPT_POST, $post);       if($post)          curl_setopt($ch, CURLOPT_POSTFIELDS, $data);       curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);       curl_setopt($ch,CURLOPT_HTTPHEADER,$header);       $result = curl_exec ($ch);       curl_close($ch);       return $result;    } }/** * 应用实例//主帐号$accountSid= 'xxxxxx';//主帐号Token$accountToken= 'xxxxxx';//应用Id$appId='xxxxxx';//模板Id$templateId='xxxxxx';$Sms_yuntongxun = new Sms_yuntongxun($accountSid,$accountToken,$appId,$templateId);print_r($Sms_yuntongxun->sendMsg('13612345678',array(273262,'注册新用户',15)));*/?>

短信供应商应该有接口的,按照他们给的demo写就好了

人气教程排行