创蓝253短信验证码
创蓝253短信验证码使用起来比阿里云的短信验证码简单。
下面放创蓝短信验证码的开发代码
我这里使用的框架是TP3,可能与你们的api放置位置不一样,
class ChuanglanSmsApi {
//创蓝发送短信接口URL, 如无必要,该参数可不用修改
const API_SEND_URL='http://sms.253.com/msg/HttpBatchSendSM';
//创蓝短信余额查询接口URL, 如无必要,该参数可不用修改
const API_BALANCE_QUERY_URL='http://sms.253.com/msg/QueryBalance';
const API_ACCOUNT='';//创蓝账号 替换成你自己的账号
const API_PASSWORD='';//创蓝密码 替换成你自己的密码
/**
* 发送短信
* @param string $mobile 手机号码
* @param string $msg 短信内容
* @param string $needstatus 是否需要状态报告
*/
public function sendSMS( $mobile, $msg, $needstatus = 'false') {
//创蓝接口参数
$postArr = array (
'account' => self::API_ACCOUNT,
'pswd' => self::API_PASSWORD,
'msg' => $msg,
'mobile' => $mobile,
'needstatus' => $needstatus
);
$result = $this->curlPost( self::API_SEND_URL , $postArr);
return $result;
}
/**
* 查询额度
* 查询地址
*/
public function queryBalance() {
//查询参数
$postArr = array (
'account' => self::API_ACCOUNT,
'pswd' => 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;
}
/**
* 通过CURL发送HTTP请求
* @param string $url //请求URL
* @param array $postFields //请求参数
* @return mixed
*/
private function curlPost($url,$postFields){
$postFields = http_build_query($postFields);
$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 );
curl_close ( $ch );
return $result;
}
//魔术获取
public function __get($name){
return $this->$name;
}
//魔术设置
public function __set($name,$value){
$this->$name=$value;
}
}
做好配置后,就可以在你的控制器中直接使用了
我这块的演示代码是用Thinkphp3.2
public function getVerifyCode(){
$vcinfo=$M->where($map)->find();
vendor('ChuanglanSMS.ChuanglanSMS');
$result=$sms->sendSMS($phonenumber,'【短息签名】短信内容以及验证码);
$res = $sms->execResult($result);
if ($res[1]==0) {
echo '验证码发送成功!';
}else{
echo '验证码发送失败!';
}
}