本篇内容主要讲解“PHP实现发送短信验证码的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP实现发送短信验证码的方法是什么”吧!
1、创建好HTML和js文件。
2、创建“Msm.php”文件,内容为“public function sendmsm(){...}”。
3、通过CURL发送HTTP请求即可。
实例
/**
* 发送短信
* @author
* @return [type] [description]
*/
public function sendmsm()
{
$phone = input('phone');
if(!$phone){
return WPreturn('请输入手机号码!',-1);
}
$code = rand(1000,9999);
$_SESSION['code'] = $code;
$res = sendmessage($code ,$phone);
if($res){
return WPreturn('发送成功',1);
}else{
return WPreturn('发送验证码失败!',-1);
}
}
/* *
* 类名:ChuanglanSmsApi
* 功能:创蓝短信接口请求类
* 详细:构造创蓝短信接口请求,获取远程HTTP数据
* 说明:
* 以下代码只是样例代码,使用第三方创蓝发送短信接口。
* 该代码仅供学习,只是提供一个参考。
*/
public function sendmessage($code, $telephone)
{
$conf = getconf('');
if(!$code){
return false;
}
if(!$telephone){
return false;
}
$content = "您的验证码是:{$code},如非本人操作,请忽略此短信。";
//创蓝接口参数
$postArr = array (
'account' => $conf['msm_appkey'],
'password' => $conf['msm_secretkey'],
'msg' => urlencode($content),
'phone' => $telephone,
'report' => true
);
$result = $this->curlPost("http://smssh2.253.com/msg/send/json", $postArr);
$json = json_decode($result);
if($json -> code != 0){
return false;
}else{
return true;
}
}
/**
* 通过CURL发送HTTP请求
* @param string $url //请求URL
* @param array $postFields //请求参数
* @return mixed
*
*/
private function curlPost($url,$postFields){
$postFields = json_encode($postFields);
$ch = curl_init ();
curl_setopt( $ch, CURLOPT_URL, $url );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json; charset=utf-8' //json版本需要填写 Content-Type: application/json;
)
);
curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_POST, 1 );
curl_setopt( $ch, CURLOPT_POSTFIELDS, $postFields);
curl_setopt( $ch, CURLOPT_TIMEOUT,60);
curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, 0);
$ret = curl_exec ( $ch );
if (false == $ret) {
$result = curl_error( $ch);
} else {
$rsp = curl_getinfo( $ch, CURLINFO_HTTP_CODE);
if (200 != $rsp) {
$result = "请求状态 ". $rsp . " " . curl_error($ch);
} else {
$result = $ret;
}
}
curl_close ( $ch );
return $result;
}
到此,相信大家对“PHP实现发送短信验证码的方法是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://www.py.cn/php/jiaocheng/34665.html