PHP 手机短信发送验证码
点击链接加入群【php/web 学习课堂】:https://jq.qq.com/?_wv=1027&k=5645xiw
欢迎大家加入,一起讨论学习
本篇设计的知识点有点多,我会分类将,同学们可以选择性的看,当然全学会是最好的。
首先我们要清楚以下要点:
1.短信平台
2.编码模式
3.curl方法
4.接口参数
5.返回值(成功/失败)
我们开始吧:
1.短信平台,有很多,当初同学介绍给我,是“阿里大于”,但由于第一次加入这么大的平台,有点迷,最后的结果是没成功....我找到了另外一些平台,对比了之后,我决定采用 106接口(http://www.106jiekou.com/),我没打广告哟,相信我。我选择的这个平台,价格是没有 阿里大于 优惠的,效率的话,阿里的背景我就不用解释了吧
2.当我们进入106接口官方之后,注册(可以免费试用10条短信),进入个人中心之后,上面有一个“下载接口文档”。我们下载之后,能看到两个文件夹:gbk 和 utf8,两者的区别请参考:https://zhidao.baidu.com/question/133119038.html
3.此平台提供了curl方法,我们就选择此方法来实现功能,代码等一切都已写好,只需要我们修改参数,不明白curl的,可以参考:http://www.jb51.net/article/39940.htm
4.参数,不懂参数的同学,请重修一遍,因为这里,你可以不懂任何代码,因为你只需要写出正确的参数,即刻实现功能。他给出了 4个参数:account(帐号)、password(接口密码)、mobile(手机号码)、content(短信内容);还有一个固定的 链接,链接不需要管,是他们平台的接口地址
注:第四个参数(短信内容)不能随意修改,需要参考短信平台提供的“模板”,若要修改成你想要的内容,需要跟平台交流... 人家平台是要赚钱继续运营的,所以给了我们一定限制的,你开通VIP就可以自定义模板,越高权限越大....我真的没打广告,只是我用过,给大家分享经验
5.返回值,当我们填写了参数,运行此代码,就会访问别人的接口地址(他提供的默认链接),成功失败都会返回给我们一个状态吗,是一个数字,我们需要去看他的开发文档,对应他返回的状态吗,给出相应的提示
<?php
header("Content-Type: text/html; charset=utf-8");
function Post($curlPost,$url){
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $curlPost);
$return_str = curl_exec($curl);
curl_close($curl);
return $return_str;
} $target = "http://sms.106jiekou.com/utf8/sms.aspx";
//替换成自己的测试账号,参数顺序和wenservice对应
$post_data = "account=账号&password=密码&mobile=手机号码&content=".rawurlencode("您的验证码是:651080565。如需帮助请联系客服。"); echo $gets = Post($post_data, $target); //采用UTF-8编码,要将文件另存为UTF-8格式
//请自己解析$gets字符串并实现自己的逻辑
//100 表示成功,其它的参考文档 ?>
以上,参数的意思:
账号、密码,是你在他平台上注册的账号和密码,他需要知道,你是不是他平台的用户,获取了你的账号和密码,就可以去使用属于你的短信套餐;
第三个参数:手机号码,是你要将短信发送给谁的手机号码;
第四个参数:短信内容。上面说过了这个平台的短信模板,是有权限的,我们不能修改,修改的话,就会失败,需要自定义模板,就要充钱成为VIP
复制以上代码,修改前三个参数,可以直接使用,但是需要去平台注册你的账号,可免费试用10条的样子。
这里说一下,有的同学肯定说,这个平台不稳定,不优惠,总之就是不想用他,想用其他平台怎么办?不难,我这里演示的这个过程,你只需要明白,调用别人平台的接口,你就要遵守他的规则,看他的开发者文档,思想基本上都是一样的,只要理清楚了思想,实现起来就不难了。
PHP 手机短信发送验证码的更多相关文章
- yii2验证密码->手机号码短信发送>手机短信发送频繁问题
<?php namespace frontend\models; use Yii; use yii\base\Model; class ChangeMobileSendRequestForm e ...
- laravel中实现短信发送验证码
前段时间想实现一个短信验证码的功能,但是卡了很长时间. 首先我用的是阿里云的短信服务业务,其首次接入流程如下: 在阿里云上开通短信服务后需要做的: 1,申请签名 2,申请模板 3,创建Acces ...
- [工具-007] C#手机短信发送
本工具是基于中国网建SMS短信通的API进行开发的,主要功能就是用注册的号码对指定的号码发送短信,此功能主要应用于企业营销方面. 中国网建SMS短信通http://www.smschinese.cn/ ...
- 4、ABPZero系列教程之拼多多卖家工具 集成短信发送模块
ABPZero并没有手机短信发送功能,现在我们来集成一个,为后面注册.登录作铺垫. 阿里云短信服务 首先需要在阿里云开通短信服务,连接地址 开通后,在签名管理中添加一个签名 在模板管理中添加一个模板, ...
- ABP集成短信发送模块
ABPZero并没有手机短信发送功能,现在我们来集成一个,为后面注册.登录作铺垫. 阿里云短信服务 首先需要在阿里云开通短信服务,连接地址 开通后,在签名管理中添加一个签名 在模板管理中添加一个模板, ...
- C#.NET 大型信息化系统集成快速开发平台 - 手机短信开发接口 4.0
可以批量发信息给手机,相同的信息发给多个手机号码的效果图 已发送手机短信列表 可以批量发手机的功能,可以把先有的待发信息列表,直接通过批量发送功能发出 这个是设置发送模板公式的功能展示,可以设置发送的 ...
- Java版阿里云通信短信发送API接口实例(新)
阿里云通信(原名阿里大于)的短信服务(Short Message Service)是阿里云为用户提供的一种通信服务的能力,支持快速发送短信验证码.短信通知等. 完美支撑双11期间2亿用户,发送6亿短信 ...
- 四:java调接口实现发送手机短信验证码功能
1.点击获取验证码之前的样式: 2.输入正确的手机号后点击获取验证码之后的样式: 3.如果手机号已经被注册的样式: 4.如果一个手机号一天发送超过3次就提示不能发送: 二:前台的注册页面的代码:reg ...
- Java调用WebService接口实现发送手机短信验证码功能,java 手机验证码,WebService接口调用
近来由于项目需要,需要用到手机短信验证码的功能,其中最主要的是用到了第三方提供的短信平台接口WebService客户端接口,下面我把我在项目中用到的记录一下,以便给大家提供个思路,由于本人的文采有限, ...
随机推荐
- LC 898. Bitwise ORs of Subarrays
We have an array A of non-negative integers. For every (contiguous) subarray B = [A[i], A[i+1], ..., ...
- XML解析思想
获取文档中的数据: 反序列化[巧记:反读] 把内存中的数据存储到文档中: 序列化[巧记:序写] XML解析思想 DOM: 就是将文档中的数据全部加载到内存,在内存中形成DOM树,然后对数据进行增删改查 ...
- 19 个强大、有趣、又好玩的 Linux 命令!
民工哥技术之路 今天 点击上方“民工哥技术之路”选择“置顶或星标” 每天10点为你分享不一样的干货 1. sl 命令 你会看到一辆火车从屏幕右边开往左边…… 安装 $ sudo apt-get ins ...
- MySQL表的创建与维护
一.导入测试数据 [root@server ~]# wget https://launchpadlibrarian.net/24493586/employees_db-full-1.0.6.tar.b ...
- JS中的prototype、__proto__与constructor(图解)
作为一名前端工程师,必须搞懂JS中的prototype.__proto__与constructor属性,相信很多初学者对这些属性存在许多困惑,容易把它们混淆,本文旨在帮助大家理清它们之间的关系并彻底搞 ...
- centos7:ssh免密登陆设置
1.使用root用户登录,进入到目录/root/.ssh 2.执行命令:ssh-keygen -t rsa 一路回车,完成后会在目录/root/.ssh下面生成文件 id_rsa和id_rsa.pub ...
- 告诉你:DOS系统实例手册系列专辑连载中
DOS系统实例手册系列专辑连载中 内容提要:
- .Net WebApi接口之Swagger集成详解
本文详细的介绍了.net从一个新的项目中创建api后集成swagger调试接口的流程! 1.首先我们创建一个MVC项目(VS2012): 2.然后在项目中的Controllers文件夹中添加API接口 ...
- rabbitmq启动方式
1.以应用方式启动 rabbitmq-server -detached 后台启动 Rabbitmq-server 直接启动,如果你关闭窗口或者需要在改窗口使用其他命令时应用就会停止 关闭:rabbi ...
- LOJ #10131 「一本通 4.4 例 2」暗的连锁
LOJ #10131 「一本通 4.4 例 2」暗的连锁 给一棵 \(n\) 个点的树加上 \(m\) 条非树边 , 现在需要断开一条树边和一条非树边使得图不连通 , 求方案数 . $n \le 10 ...