• 手机验证码


    php接入漫道科技发短信的SDK接口:将此方法放在控制器中,修改成自己的序列号和密码。其他方法调用这个方法,即可实现给手机发送验证码短信。

    public function post_mt($phone,$phone_code)
        {
            $flag = 0;
            //要post的数据
            $argv = array(
                     'sn'=>'AAAAAAAAAAAA', ////替换成您自己的序列号
                     'pwd'=>strtoupper(md5('AAAAAAAAAAAA'.'BBBBBB')), //此处密码需要加密 加密方式为 md5(sn+password) 32位大写
                     'mobile'=>"$phone",//手机号 多个用英文的逗号隔开 post理论没有长度限制.推荐群发一次小于等于10000个手机号
                     'content'=>iconv( "UTF-8", "gb2312//IGNORE" ,"你好,注册验证码为".$phone_code."【逍游天下】"),//短信内容
                     'ext'=>'',     
                     'stime'=>'',//定时时间 格式为2011-6-29 11:09:21
                     'rrid'=>''
                     );
            //构造要post的字符串
            foreach ($argv as $key=>$value) {
                      if ($flag!=0) {
                                     $params .= "&";
                                     $flag = 1;
                      }
                     $params.= $key."="; $params.= urlencode($value);
                     $flag = 1;
                      }
    
             $length = strlen($params);
                     //创建socket连接
             $fp = fsockopen("sdk2.entinfo.cn",8060,$errno,$errstr,10) or exit($errstr."--->".$errno);
             //构造post请求的头
             $header = "POST /webservice.asmx/mt HTTP/1.1
    ";
             $header .= "Host:sdk2.entinfo.cn
    ";
             $header .= "Content-Type: application/x-www-form-urlencoded
    ";
             $header .= "Content-Length: ".$length."
    ";
             $header .= "Connection: Close
    
    ";
             //添加post的字符串
             $header .= $params."
    ";
             //发送post的数据
             fputs($fp,$header);
              $inheader = 1;
              while (!feof($fp)) {
                             $line = fgets($fp,1024); //去除请求包的头只显示页面的返回数据
                             if ($inheader && ($line == "
    " || $line == "
    ")) {
                                     $inheader = 0;
                              }
                              if ($inheader == 0) {
                                    // echo $line;
                              }
              }
              //<string xmlns="http://tempuri.org/">-5</string>
               $line=str_replace("<string xmlns="http://tempuri.org/">","",$line);
               $line=str_replace("</string>","",$line);
               $result=explode("-",$line);
              // echo $line."-------------";
                if(count($result)>1)
                echo '发送失败返回值为:'.$line.'。请查看webservice返回值对照表';
                else
                echo '发送成功 返回值为:'.$line;  
    
        }

     注意:发送的内容后面要加公司签名,用中括号扩起来,即【逍游天下】,否则收不到短信

  • 相关阅读:
    [SCM]源码管理 perforce的权限管理
    [BuildRelease]产品和文件版本号
    删除所有的.svn 文件
    [SCM]源码管理 perforce快速入门
    6个Linux chkconfig命令实例 增加,删除,查看和修改services的自动启动选项
    [SCM]源码管理 perforce管理员需要知道的命令
    [SCM]源码管理 perforce与分布式团队的开发
    [SCM]源码管理 perforce命令行高级
    PHP aes加密 mcrypt转openssl问题;
    《Excel与VBA程序设计》第四章更新
  • 原文地址:https://www.cnblogs.com/feiwu123/p/5312334.html
Copyright © 2020-2023  润新知