//增加了参数$action 来标志发送的是什么短信 注册短信 验证码短信 提示短信等 function send_sms($mobile, $message, $word = 0, $time = 0,$action=0) { global $db, $DT, $DT_TIME, $DT_IP, $_username; if(!$DT['sms'] || !is_mobile($mobile) || strlen($message) < 5) return false; $word or $word = word_count($message); $sms_message = convert($message, DT_CHARSET, 'UTF-8'); include DT_ROOT."/taobao-sdk/TopSdk.php"; date_default_timezone_set('Asia/Shanghai'); $c = new TopClient; //api 地址https://api.alidayu.com/docs/api.htm?spm=a3142.7629065.4.7.RoV088&apiId=25450 $c->appkey = 'yourappey'; $c->secretKey = 'yoursecretKey'; $req = new AlibabaAliqinFcSmsNumSendRequest; $req->setExtend("123456"); //可以带一个回传参数 $req->setSmsType("normal"); //短信类型 $req->setSmsFreeSignName("标签");//在阿里大鱼里设置好的标签 $req->setSmsParam("{"code":"".$message."","product":"产品"}"); $req->setRecNum($mobile); $temp=""; switch($action){ case 0: $temp="SMS_66725256"; //注册验证码 在ali大鱼上设置好的 需要参数 code break; case 1: $temp="SMS_66770307"; //交易模板 break; case 2: break; default: break; } $req->setSmsTemplateCode($temp); //短信模板 SMS_5230182是注册模板 $resp = $c->execute($req); //默认返回xml 在taobao-sdk/top/TopClient.php 中修改 //$xml=simplexml_load_string($resp); 直接返回的是xml解析后的数据,可以直接用$resp->code; $code =""; //var_dump($resp); $code=$resp->code; //发送错误后code无值 if($code!="") { //发送出错了,这里处理错误情况 } else { //发送成功了 $code="0"; } $db->query("INSERT INTO {$db->pre}sms (mobile,message,word,editor,sendtime,code) VALUES ('$mobile','$message','$word','$_username','$DT_TIME','$code')"); return $code; }