class ttsms
{
// 参数数组
// String fmt = "src={0}&pwd={1}&ServiceID=SEND&dest={2}&sender={3}&msg={4}&codec=8";
function encodeHexStr($dataCoding, $realStr)
{
if ($dataCoding == 15) {
return strtoupper(bin2hex(iconv('UTF-8', 'GBK', $realStr)));
} else if ($dataCoding == 3) {
return strtoupper(bin2hex(iconv('UTF-8', 'ISO-8859-1', $realStr)));
} else if ($dataCoding == 8) {
return strtoupper(bin2hex(iconv('UTF-8', 'UCS-2BE', $realStr)));
} else {
return strtoupper(bin2hex(iconv('UTF-8', 'ASCII', $realStr)));
}
}
function getSendResult($data){
$msg='';
$code = -1;
if ($data > 0) {
$code = 1;
$msg = "短信发送成功";
} else {
switch ($data) {
case "-01":
$msg = "短信运营商系统维护中,请联系客服";
break;
case "-02":
$msg = "当前账号余额不足";
break;
case "-03":
$msg = "帐号停止";
break;
case "-04":
$msg = "目的号码运营商不在服务覆盖范围";
break;
case "-05":
$msg = "目的手机号码数量超长(30/次,超30个请自行做循环)";
break;
case "-06":
$msg = "用户或密码错误";
break;
case "-07":
$msg = "目的号码不能为空";
break;
case "-08":
$msg = "短信内容不能为空";
break;
case "-09":
$msg = "源号码不能为空";
break;
case "-10":
$msg = "DEST参数格式错误";
break;
case "-11":
$msg = "用户名空";
break;
case "-12":
$msg = "密码空";
break;
case "-13":
$msg = "网络错误";
break;
case "-14":
$msg = "短信运营商内部错误";
break;
case "-15":
$msg = "非法手机号码,手机号码格式不对";
break;
case "-16":
$msg = "短信内容超长!(UNICODE最大70个字符,Alphabet编码(英文即以此方式传输)最大160字符)";
break;
case "-17":
$msg = "短信内容含有非法字符";
break;
case "-18":
$msg = "目的手机号码限制";
break;
case "-19":
$msg = "短信内容编码不对(比如发中文、韩文、日文而用Alphabet编码方式)";
break;
case "-50":
$msg = "非法的 IDS";
break;
default:
$msg = "未知错误";
break;
}
}
$arr = array("code" => $code, "msg" => $msg);
return $arr;
}
public function sendSms($phone, $code)
{
$data = array(
'src' => 'chzx1688', // 用户名
'pwd' => 'chzx2005', // 你的密码
'ServiceID' => 'SEND',
'dest' => '86' . $phone, // 你的目的号码
'sender' => '', // 你的原号码,可空
'codec' => '8', // 编码
'msg' => $this -> encodeHexStr(8, '【P68】,您的验证码为:'.$code)
);
$uri = "http://210.51.190.233:8085/mt/mt3.ashx";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $uri);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$return = curl_exec($ch);
curl_close($ch);
return $this -> getSendResult($return);
}
}
一键复制
编辑
Web IDE
原始数据
按行查看
历史