PHP实现 手机发送短信的程序



<?php
/*--------------------------------
功能:  HTTP接口 发送短信
修改日期: 2011-03-04
说明:  http://api.sms.cn/mt/?uid=用户账号&pwd=MD5位32密码&mobile=号码&mobileids=号码编号&content=内容
状态:
 100 发送成功
 101 验证失败
 102 短信不足
 103 操作失败
 104 非法字符
 105 内容过多
 106 号码过多
 107 频率过快
 108 号码内容空
 109 账号冻结
 110 禁止频繁单条发送
 112 号码不正确
 120 系统升级
--------------------------------*/
$http = 'http://api.sms.cn/mt/';  //短信接口
$uid = 'test';       //用户账号
$pwd = 'test';       //密码
$mobile  = '13900001111,13900001112,13900001113'; //号码
$mobileids  = '1390000111112345666688,139000011121112345666688,139000011131112345666688'; //号码唯一编号
$content = 'PHPHTTP接口';  //内容
//即时发送
$res = sendSMS($http,$uid,$pwd,$mobile,$content,$mobileids);
echo $res;

//定时发送
/*
$time = '2010-05-27 12:11';
$res = sendSMS($uid,$pwd,$mobile,$content,$time);
echo $res;
*/
function sendSMS($http,$uid,$pwd,$mobile,$content,$mobileids,$time='',$mid='')
{
 
 $data = array
  (
  'uid'=>$uid,     //用户账号
  'pwd'=>md5($pwd.$uid),   //MD5位32密码,密码和用户名拼接字符
  'mobile'=>$mobile,    //号码
  'content'=>$content,   //内容
  'mobileids'=>$mobileids,
  'time'=>$time,     //定时发送
  );
 $re= postSMS($http,$data);   //POST方式提交
 if( trim($re) == '100' )
 {
  return "发送成功!";
 }
 else
 {
  return "发送失败! 状态:".$re;
 }
}

function postSMS($url,$data='')
{
 $row = parse_url($url);
 $host = $row['host'];
 $port = $row['port'] ? $row['port']:80;
 $file = $row['path'];
 while (list($k,$v) = each($data))
 {
  $post .= rawurlencode($k)."=".rawurlencode($v)."&"; //转URL标准码
 }
 $post = substr( $post , 0 , -1 );
 $len = strlen($post);
 $fp = @fsockopen( $host ,$port, $errno, $errstr, 10);
 if (!$fp) {
  return "$errstr ($errno)\n";
 } else {
  $receive = '';
  $out = "POST $file HTTP/1.1\r\n";
  $out .= "Host: $host\r\n";
  $out .= "Content-type: application/x-www-form-urlencoded\r\n";
  $out .= "Connection: Close\r\n";
  $out .= "Content-Length: $len\r\n\r\n";
  $out .= $post;  
  fwrite($fp, $out);
  while (!feof($fp)) {
   $receive .= fgets($fp, 128);
  }
  fclose($fp);
  $receive = explode("\r\n\r\n",$receive);
  unset($receive[0]);
  return implode("",$receive);
 }
}
?>


详细接口说明:http://www.sms.cn

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值