企业级短信验证码,短信通知类,短信秒发送,秒到达哦

浏览:5702 发布日期:2015/02/08 分类:功能实现 关键字: 企业级短信验证码 短信通知类 短信 短信秒到达
适合需要短信验证,手机绑定以及消息通知,订单查询,快递查询,货物派送等短信通知功能的网站使用
之前有写过基于电信能力开发平台的短信接口开发的短信发送类http://www.thinkphp.cn/code/625.html。已经有大半年了,好久都没更新了,很多朋友都在问它的使用方法,已经其他的一些问题,在这里说声抱歉啊,因为有点儿忙,都不怎么注意看消息的。sorry.现在送上企业级的短信验证码,以及短信通知类。注意哦,这个短信的及时性是很好的啊,比自谦的电信短信接口发送的短信快多了,还有的的可靠性等待都比之前的好很多。一般都是5秒这样就能到达了,最迟也是15秒而已。
本类是基于互亿短信互动平台的短信接口开发的,要使用本接口必须拥有互亿短信平台的账号。测试账号的短信测试条数为10条。<?php

class Sms {
    
    var $target ="http://106.ihuyi.cn/webservice/sms.php?method=Submit";//短信post提交地址;
    var $username='用户名';//互亿短信平台上注册的用户名,每个账号可以获得10条测试短信;
    var $password='密码';//密码;
    
    function __construct() {
        $this->Sms();
    }
    function Sms()
    {

    }
    //curl post 方式提交请求获取响应信息。
    function Curl_Post($curlPost,$url){
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_HEADER, false);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_NOBODY, true);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $curlPost);
        $return_str = curl_exec($curl);
        curl_close($curl);
        return $return_str;
    }
    //将xml格式的数据转化成为数组
    function xml_to_array($xml){
        $reg = "/<(\w+)[^>]*>([\\x00-\\xFF]*)<\\/\\1>/";
        if(preg_match_all($reg, $xml, $matches)){
            $count = count($matches[0]);
            for($i = 0; $i < $count; $i++){
            $subxml= $matches[2][$i];
            $key = $matches[1][$i];
                if(preg_match( $reg, $subxml )){
                    $arr[$key] = $this->xml_to_array( $subxml );
                }else{
                    $arr[$key] = $subxml;
                }
            }
        }
        return $arr;
    }
    //短信发送函数,实际上调用的是Curl_Post 函数发送的,$mobile为发送的对象手机号,$msg为发送的内容,注意:$msg的模板内容必须经过了互亿短信平台的审核方可发送成功
    
    
    function send($mobile,$msg){
        $post_data = "account=".$this->username."&password=".$this->password."&mobile=".$mobile."&content=".rawurlencode($msg);//构造post数据
        $results =  $this->xml_to_array($this->Curl_Post($post_data,$this->target));
        if($results['SubmitResult']['code']==2){//返回码等于2的时候
            echo "发送成功!";
        }else{
            echo '发送失败!'.$results['SubmitResult']['code'];
        }
    }
  }

?>[url][/url]

附件 Sms.zip ( 1.18 KB 下载:192 次 )

评论( 相关
后面还有条评论,点击查看>>