php短信验证码随机数_深入解读PHP短信验证码原理

本文介绍了PHP实现手机短信验证码的原理和步骤,包括接入短信服务提供商、发送请求、接收验证码等流程,并展示了如何封装发送短信的类。通过具体的代码示例,帮助读者理解如何在网站开发中实现验证码功能。
摘要由CSDN通过智能技术生成

众所周知,目前建设网站时为了保证用户信息的真实性,用户注册时需要手机验证码才可以,这样即保证了用户信息资料的准确性,也为用户提供了方便快捷的注册方式 。那么这种短信的发送原理是什么呢,下面小编为大家解读短信验证码原理,如图所示:

113610417_1_20171017102212229.jpg

113610417_2_20171017102212307.jpg

工作开发流程:

第一、实现php手机短信验证功能的基本思路

1、要找到短信服务提供商,接入短信服务

2、在网站信息提交页面请求发送信息

3、服务器向短信服务提供商通信,提交发送请求

4、短信服务提供商通过运营商将信息发送到用户的手机中

第二 :手机号码短信验证前台页面效果实现

PHP-短信验证码

手机验证码:

第三、调用短信服务器短信接口

/**

* Created by PhpStorm.

* User: Leo

* Date: 2017/8/30

* Time: 14:59

*/

//$_post

$phone= isset($_POST['phone'])?$_POST['phone']:'';

$code = isset($_POST['code'])?$_POST['code']:'';

require(dirname(__FILE__).'/config.php');

require(dirname(__FILE__).'/SendSMS.php');

//实例化短信发送类

$sms= newSendSMS($options['account'],$options['password']);

$context='验证码'.$code;

$res=$sms->send($phone,$context);

if($res){

echo"成功";

}else{

echo"失败";

}

为了方便代码以后能重复使用.所以把发送短息具体封装了一个类.具体看代码:

/**

* Created by PhpStorm.

* User: Leo

* Date: 2017/8/30

* Time: 15:26

*/

/**

* 设置用户信息

*/

classSendSMS{

constSENDURL='http://gd.ums86.com:8899/sms/Api/Send.do';

private$_un;

private$_pw;

function__construct($user,$pwd){

$this->_un=$user;

$this->_pw=$pwd;

}

functionsend($phone,$content,$isreport=0){

//发送数据

$data=array(

'un'=>$this->_un,

'pw'=>$this->_pw,

'sm'=>$content,

'da'=>$phone,

'rd'=>$isreport,

'rf'=>2,

'tf'=>3,

'dc'=>15,

);

$url=SendSMS::SENDURL.'?'.http_build_query($data);

$this->curlGet($url);

}

public functioncurlGet($url){

$ch= curl_init();

curl_setopt($ch,CURLOPT_HEADER,0);

curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);

curl_setopt($ch,CURLOPT_URL,$url);

$res=curl_exec($ch);

curl_close($ch);

return$res;

}

}

在SendSMS里面的一些方法,大家在第三方的短信验证码服务商提供的实例代码里面都可以看到,功能基本都是大同小异,比较简单。

如图带领我们实现了一个属于自己的短信验证码发送功能。

113610417_3_20171017102212386.jpg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值