2018年(19)
分类: PHP
2018-06-04 17:34:12
1.登录
2.获取接口API账号,密码:选择任意产品>激活>企业认证(上传公司营业执照)
3.申请签名(以公司简称或缩写命名)备注:平台申请签名,API接口加上申请签名
4.模板申请(自定义编辑内容):选择任意应用>短息编辑栏目{模板管理}>添加签名
4.sms_send_demo.php发送短信
sms_queryBalance_demo.php查询短信余额
备注:申请模板可达到短信免审作用
常见问题
1.相同号码一天有10条限制(可根据业务需求进行调整)
2.接口账号(使用API账号,密码 并非登录管理后台账号,密码)
状态报告接入流程:
1.配置一个外网可以访问的URL来接受创蓝服务器的异步推送
2.参考receive.php
主要代码:
header("Content-type:text/html; charset=UTF-8");
class ChuanglanSmsApi {
//发送短信的接口地址
const API_SEND_URL='';
//查询余额的接口地址
const
API_BALANCE_QUERY_URL='';
const API_ACCOUNT='*******';//短信账号从 里面获取。
const API_PASSWORD='*******';//短信密码从 from 里面获取。
/**
* 发送短信需要的接口参数
*
* @param string $mobile
手机号码
* @param string $msg
想要发送的短信内容
* @param string $needstatus
是否需要状态报告 '1'为需要 '0'位不需要。
*/
public function sendSMS( $mobile, $msg, $needstatus
= 1) {
//发送短信的接口参数
$postArr = array (
'un' => self::API_ACCOUNT,
'pw' => self::API_PASSWORD,
'msg' => $msg,
'phone' => $mobile,
'rd' => $needstatus
);
$result =
$this->curlPost( self::API_SEND_URL , $postArr);
return $result;
}
/**
*
*
* 查询余额
*/
public function queryBalance() {
// 查询接口参数
$postArr = array (
'un' => self::API_ACCOUNT,
'pw' => self::API_PASSWORD,
);
$result =
$this->curlPost(self::API_BALANCE_QUERY_URL, $postArr);
return $result;
}
/**
* 处理接口返回值
*
*/
public function execResult($result){
$result=preg_split("/[,\r\n]/",$result);
return $result;
}
/**
* @param string $url
* @param array $postFields
* @return mixed
*/
private function curlPost($url,$postFields){
$postFields =
http_build_query($postFields);
if(function_exists('curl_init')){
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_URL, $url );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $postFields );
$result = curl_exec ( $ch );
if(curl_errno($ch))
{
return 'Curl error: ' . curl_error($ch);
}
curl_close ( $ch );
}elseif(function_exists('file_get_contents')){
$result=file_get_contents($url.$postFields);
}
return $result;
}
//魔术获取
public function __get($name){
return $this->$name;
}
//魔术设置
public function __set($name,$value){
$this->$name=$value;
}
}
?>