zoukankan      html  css  js  c++  java
  • 发送短信集合类

    涉及华信云短信,sms短信,sms1086短信,阿里云短信   废话不多 直接看代码

      1 class Sms extends Controller
      2 {
      3     // 华信云短信
      4     public function hx_smscn($code,$mobile)
      5     {
      6         // 前端:http://www.ipyy.net
      7         // 商户:https://c.ipyy.net
      8         $account='ZZ00***';
      9         $password=strtoupper(md5('ZZ0066***'));//接口密码
     10 
     11         $content='【***】您好,短信验证码为:'.$code.',如非本人操作,请忽略此短信。';
     12         $url="https://dx.ipyy.net/smsJson.aspx?action=send&userid=****&account=".$account."&password=".$password."&mobile=".$mobile."&content=".$content."&sendTime=&extno=";
     13         $ress= @file_get_contents($url);
     14         $res = json_decode($ress,true);
     15         if($res['returnstatus']=='Success' && $res['successCounts']==1)
     16         {
     17             return ['code'=>1,'msg'=>'发送成功,请注意查收'];
     18         }else{
     19             return ['code'=>0,'msg'=>'发送短信返回错误:'.$res['message']];
     20         }
     21     }
     22 
     23     
     24     // sms短信
     25     public function sms_smscn($code,$mobile)
     26     {
     27         $smsurl='http://api.sms.cn/sms/?ac=send&uid=***&pwd=*****&template=*****&mobile='.$mobile.'&content={"code":"'.$code.'"}';
     28         $result=@file_get_contents($smsurl);
     29         $result=json_to_array($result);
     30         if($result['stat']=='100')
     31         {
     32             return ['code'=>1,'msg'=>'发送成功,请注意查收'];
     33         }else{
     34             return ['code'=>0,'msg'=>'发送短信返回错误:'.$result['message']];
     35         }
     36 
     37         // return ['code'=>1,'msg'=>'发送成功,请注意查收'];
     38     }
     39 
     40     // sms1086短信
     41     public function sms_sms1086($code,$mobile)
     42     {
     43         $smsapi = "http://api.sms1086.com/Api/Sendutf8.aspx"; //短信网关
     44         $user =urlencode("****"); //短信平台帐号
     45         $pass = md5("****".date("Y-m-d H:i:s",time())); //短信平台密码
     46 
     47         $content = urlencode("您好,您的验证码:".utf8_encode($code).",十分钟内有效。如非您本人操作,可无需理会。【*****】");
     48         $sendurl = $smsapi."?username=".$user."&password=".$pass."&mobiles=".$mobile."&content=".$content."&f=1&timestamp=".urlencode(date("Y-m-d H:i:s",time()));
     49 
     50         $res = @file_get_contents($sendurl) ;
     51 
     52         $res = urldecode($res);
     53         $res = explode("&",$res);
     54         $res0=explode("=",$res[0]);
     55         // FLog($res0,'sendSms');
     56         if($res && isset($res0[1]) && $res0[1]==0){
     57             return ['code'=>1,'msg'=>'发送成功,请注意查收'];
     58         }else{
     59             $res2=explode("=",$res[2]);
     60             $msg=$res2[1];
     61             return ['code'=>0,'msg'=>$msg];
     62         }
     63     }
     64     // 阿里云短信
     65     public function sms_aliyun($code,$mobile)
     66     {
     67         $code=['code'=>$code];
     68         $code=json_encode($code);
     69 
     70         $params = array ();
     71 
     72         // *** 需用户填写部分 ***
     73 
     74         // fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
     75         $accessKeyId = "***";
     76         $accessKeySecret = "***";
     77 
     78         // fixme 必填: 短信接收号码
     79         $params["PhoneNumbers"] = $mobile;
     80 
     81         // fixme 必填: 短信签名,应严格按"签名名称"填写,请参考: https://dysms.console.aliyun.com/dysms.htm#/develop/sign
     82         $params["SignName"] = "*****";
     83 
     84         // fixme 必填: 短信模板Code,应严格按"模板CODE"填写, 请参考: https://dysms.console.aliyun.com/dysms.htm#/develop/template
     85         $params["TemplateCode"] = '*****';
     86 
     87         // fixme 可选: 设置模板参数, 假如模板中存在变量需要替换则为必填项
     88         $params['TemplateParam'] = $code;
     89 
     90         // fixme 可选: 设置发送短信流水号
     91         $params['OutId'] = "****";
     92 
     93         // fixme 可选: 上行短信扩展码, 扩展码字段控制在7位或以下,无特殊需求用户请忽略此字段
     94         $params['SmsUpExtendCode'] = "1234567";
     95 
     96 
     97         // *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
     98         if(!empty($params["TemplateParam"]) && is_array($params["TemplateParam"])) {
     99             $params["TemplateParam"] = json_encode($params["TemplateParam"], JSON_UNESCAPED_UNICODE);
    100         }
    101 
    102         // 初始化SignatureHelper实例用于设置参数,签名以及发送请求
    103         $helper = new SignatureHelper();
    104 
    105         // 此处可能会抛出异常,注意catch
    106         $content = $helper->request(
    107             $accessKeyId,
    108             $accessKeySecret,
    109             "dysmsapi.aliyuncs.com",
    110             array_merge($params, array(
    111                 "RegionId" => "cn-hangzhou",
    112                 "Action" => "SendSms",
    113                 "Version" => "2017-05-25",
    114             ))
    115         // fixme 选填: 启用https
    116         // ,true
    117         );
    118         $content=(array)$content;
    119         if($content['Code']=='OK' && $content['Message']=='OK')
    120         {
    121             return ['code'=>1,'msg'=>'发送成功,请注意查收'];
    122         }else{
    123             // var_dump($content);
    124             return ['code'=>0,'msg'=>'发送短信返回错误:'.$content['Message']];
    125         }
    126     }
    127 
    128 }
  • 相关阅读:
    474 Ones and Zeroes 一和零
    473 Matchsticks to Square 火柴拼正方形
    472 Concatenated Words 连接的单词
    Django 视图系统
    Django 路由系统
    Django 框架基础
    jQuery
    JavaScript- BOM, DOM
    CSS概念,引入,选择器
    HTML
  • 原文地址:https://www.cnblogs.com/exo5/p/13572490.html
Copyright © 2011-2022 走看看