/**
* 发送手机消息类 ,验证码 找回密码 上课提醒 等等 使用微米短信平台 微米的官方文档实例 http://www.weimi.cc/example-php.html
* @author panchengze 2015-01-20
*/
class SendMobileMessage
{
private $_api_address = 'http://api.weimi.cc/2/sms/send.html'; //微米的api调用地址
private $_uid = 'GCxs423gda1h9j';
private $_password = 'ada12324';
private $_packagedParam = '';
/**
* 发送
* @return 微米返回的结果 json
*/
public function send($mobiles, $cid, $param, $type = 'json')
{
$this->_packageParam ($mobiles, $cid, $param, $type);//打包参数
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $this->_api_address);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $this->_packagedParam);
$res = curl_exec( $ch );
curl_close( $ch );
return $res;
}
/**
* 组装发送的参数
* @param $mobiles 要发送到的手机号 以逗号分隔 示例:139********,138********
* @param $cid 短信模板cid,通过微米后台创建,由在线客服审核。必须设置好短信签名,签名规范:
* 1)、模板内容一定要带签名,签名放在模板内容的最前面;
* 2)、签名格式:【***】,签名内容为三个汉字以上(包括三个);
* 3)、短信内容不允许双签名,即短信内容里只有一个“【】”。
*@param $param 传入模板参数。短信模板内容示例:
* 【微米】您的验证码是:%P%,%P%分钟内有效。如非您本人操作,可忽略本消息。
* 传入两个参数:
* array('p1'=>610912, 'p2'=>3, ...) 若一个参数的话直接传值即可
* 最终发送内容:
* 【微米】您的验证码是:610912,3分钟内有效。如非您本人操作,可忽略本消息。
*@param $type 发送类型 josn
* return string
*/
private function _packageParam ($mobiles, $cid, $param, $type)
{
$this->_packagedParam = 'uid=' . $this->_uid . '&pas=' . $this->_password . '&mob=' . $mobiles
. '&cid=' . $cid;
if(is_array($param))
{
foreach($param as $k=>$v)
{
$this->_packagedParam .= '&' . $k . '=' . $v;
}
} else {
$this->_packagedParam .= '&p1=' . $param;
}
$this->_packagedParam .= '&type=json';
}
}
$sendMobileMessage = new SendMobileMessage();
$sendMobileMessage->send('18821536122', 'wHkfJJ65Y13D', '123456');
把微米给的php实例封装了下 仅供参考