点击链接加入群【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 手机短信发送验证码的更多相关文章

  1. yii2验证密码->手机号码短信发送>手机短信发送频繁问题

    <?php namespace frontend\models; use Yii; use yii\base\Model; class ChangeMobileSendRequestForm e ...

  2. laravel中实现短信发送验证码

    前段时间想实现一个短信验证码的功能,但是卡了很长时间. 首先我用的是阿里云的短信服务业务,其首次接入流程如下: 在阿里云上开通短信服务后需要做的: 1,申请签名  2,申请模板   3,创建Acces ...

  3. [工具-007] C#手机短信发送

    本工具是基于中国网建SMS短信通的API进行开发的,主要功能就是用注册的号码对指定的号码发送短信,此功能主要应用于企业营销方面. 中国网建SMS短信通http://www.smschinese.cn/ ...

  4. 4、ABPZero系列教程之拼多多卖家工具 集成短信发送模块

    ABPZero并没有手机短信发送功能,现在我们来集成一个,为后面注册.登录作铺垫. 阿里云短信服务 首先需要在阿里云开通短信服务,连接地址 开通后,在签名管理中添加一个签名 在模板管理中添加一个模板, ...

  5. ABP集成短信发送模块

    ABPZero并没有手机短信发送功能,现在我们来集成一个,为后面注册.登录作铺垫. 阿里云短信服务 首先需要在阿里云开通短信服务,连接地址 开通后,在签名管理中添加一个签名 在模板管理中添加一个模板, ...

  6. C#.NET 大型信息化系统集成快速开发平台 - 手机短信开发接口 4.0

    可以批量发信息给手机,相同的信息发给多个手机号码的效果图 已发送手机短信列表 可以批量发手机的功能,可以把先有的待发信息列表,直接通过批量发送功能发出 这个是设置发送模板公式的功能展示,可以设置发送的 ...

  7. Java版阿里云通信短信发送API接口实例(新)

    阿里云通信(原名阿里大于)的短信服务(Short Message Service)是阿里云为用户提供的一种通信服务的能力,支持快速发送短信验证码.短信通知等. 完美支撑双11期间2亿用户,发送6亿短信 ...

  8. 四:java调接口实现发送手机短信验证码功能

    1.点击获取验证码之前的样式: 2.输入正确的手机号后点击获取验证码之后的样式: 3.如果手机号已经被注册的样式: 4.如果一个手机号一天发送超过3次就提示不能发送: 二:前台的注册页面的代码:reg ...

  9. Java调用WebService接口实现发送手机短信验证码功能,java 手机验证码,WebService接口调用

    近来由于项目需要,需要用到手机短信验证码的功能,其中最主要的是用到了第三方提供的短信平台接口WebService客户端接口,下面我把我在项目中用到的记录一下,以便给大家提供个思路,由于本人的文采有限, ...

随机推荐

  1. C11中的Unicode

    在C11(ISO/IEC 9899:2011)标准中引入了对UTF8.UTF16以及UTF32字符编码的支持. 其中,UTF8字符直接通过char来定义,字面量前缀使用u8.比如: char c = ...

  2. C# mongodb 类库

    https://github.com/mongodb/mongo-csharp-driver/downloads https://github.com/mongodb/mongo-csharp-dri ...

  3. Java面试题(基础)

    一.Java 基础 1.JDK 和 JRE 有什么区别? 答:JRE是java运行时环境,包含了java虚拟机,java基础类库.是使用java语言编写的程序运行所需要的软件环境,是提供给想运行jav ...

  4. 人人都可以写的可视化Python小程序第二篇:旋转的烟花

    兴趣是最好的老师 枯燥的编程容易让人放弃,兴趣才是最好的老师.无论孩子还是大人,只有发现这件事情真的有趣,我们才会非常执着的去做这件事,比如打游戏.如果编程能像玩游戏一样变得有趣,我相信很多人就特别愿 ...

  5. python进阶-mock接口

    setting.py MYSQL_HOST='192.168.127.139' PASSWORD=' PORT=3306 USER='root' DB='stu' tools.py import py ...

  6. golang web框架设计4:日志设计

    beego的日志设计思路来自于seelog,根据不同的level来记录日志,beego设计的日志是一个轻量级的,采用系统log.Logger接口,默认输出到os.Stdout,用户可以实现这个接口然后 ...

  7. Linux进程批量管理工具

    在使用docker容器时,可以有单机的docker-compose批量编排工具,甚至还有集群的k8s之类编排工具,那么在Linux系统中同样也有相关的批量管理进程的工具,其中使用最多的应该就是supe ...

  8. sql注入01

    1.SLQ:操作数据 数据库结构 create/drop database create/alter/drop table 数据库内容 insert values语句 insert into tabl ...

  9. OpenCV.物体识别

    1.度娘:“OpenCV 物体识别” 1.1.opencv实时识别指定物体 - 诺花雨的博客 - CSDN博客.html(https://blog.csdn.net/qq_27063119/artic ...

  10. 如何在视图中启用thymeleaf

    1.在HTML标签中引入一个属性 <html xmlns:th="http://www.thymeleaf.org"> <!-- 引入xmlns:th属性才能启用 ...