短信宝接口使用_垚焱yhedward的博客-程序员宝宝

技术标签: PHP技术应用  短信验证  

现在大家在开发过程中都会用到发送短信的功能,本人发现如果没有特别的要求那使用短信宝接口是很方便的,对于新手来说简单易懂,开发起来很省时间,比阿里大于要容易很多。

先注册短信宝帐号。www.smsbao.com

可以测试一条短信,(一般不用测试体验)到开发文档(http://www.smsbao.com/openapi/) 中阅读并下载相应的接口代码,并参考实例代码测试就可以,并可根据实际需求进行扩展功能。

以下以PHP为例,简说一下发送验证码。

短信宝下载的实例源码如下:

<?php
$statusStr = array(
"0" => "短信发送成功",
"-1" => "参数不全",
"-2" => "服务器空间不支持,请确认支持curl或者fsocket,联系您的空间商解决或者更换空间!",
"30" => "密码错误",
"40" => "账号不存在",
"41" => "余额不足",
"42" => "帐户已过期",
"43" => "IP地址限制",
"50" => "内容含有敏感词"
);
$smsapi = "http://api.smsbao.com/";
$user = "***"; //短信平台帐号
$pass = md5("****"); //短信平台密码
$content="短信内容";//要发送的短信内容
$phone = "*****";//要发送短信的手机号码
$sendurl = $smsapi."sms?u=".$user."&p=".$pass."&m=".$phone."&c=".urlencode($content);
$result =file_get_contents($sendurl) ;
echo $statusStr[$result];
?>

将以下代码写成一个function,并将要不同的变量写成参数,以便在调 用时传参。将function放到你系统中常用的基础类中,如config.php,common.class.php等,只要在你发送短信的页面中有引入都可以,这样能保证调取的到。

略改造后如下:

function sendsmscode($phone)
{
	$statusStr = array(
		"0" => "短信发送成功",
		"-1" => "参数不全",
		"-2" => "服务器空间不支持,请确认支持curl或者fsocket,联系您的空间商解决或者更换空间!",
		"30" => "密码错误",
		"40" => "账号不存在",
		"41" => "余额不足",
		"42" => "帐户已过期",
		"43" => "IP地址限制",
		"50" => "内容含有敏感词"
	);
		
	$smsapi = "http://www.smsbao.com/"; //短信网关
	$user = "dfhmzs"; //短信平台帐号
	$pass = md5("1qaz2wsx"); //短信平台密码
	
	//生成随机验证码
	$chars = str_repeat('0123456789',3);
	// 位数过长重复字符串一定次数
	$chars = str_repeat($chars,4);
	$chars = str_shuffle($chars);
	$code = substr($chars, 0,4);
	$content="【你的签名】尊敬的用户,您的验证码是".$code.",请于10分钟内正确输入。如非本人操作,请忽略此短信。";//要发送的短信内容
	$phone =$phone;
	$sendurl = $smsapi."sms?u=".$user."&p=".$pass."&m=".$phone."&c=".urlencode($content);
	$result =file_get_contents($sendurl) ;
	return $statusStr[$result];
	}

如需要发送短信的页面调取:

$result=sendsmscode('要接收的手机号码');
if($result==0)
{
echo "发送成功!";
}

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yh_bxhl/article/details/80416290

智能推荐

与君欢喜城 暖色度余生_墨理学AI的博客-程序员宝宝

与君欢喜城 暖色度余生与人曾约黄昏后,君问归期未可知。欢情薄,黄花瘦。喜相逢,畅叙迟。城东梨花落相知。暖香扑鼻欣喜宴 ,色娇艳,语莺啼 。度玉箫,声百意。余华难尽清婷依,生死相依伴君痴。与君欢喜城,暖色度余生小生不才,未得姑娘青睐,扰姑娘良久,姑娘勿怪;自此所有仰慕之意止于唇齿,掩于岁月,匿于年华;姑娘往北走,小生往南瞧,不再打扰姑娘,今生就此别过;望姑娘日后善其身,遇良人,与君欢喜城,暖色度余生!...

poj 1020_Rotile的博客-程序员宝宝

/*276k 32ms*/#include //#include using namespace std;#define SIZE 11#define COL 50//var//fstream fin;int a[SIZE];int b[COL]; //ÿһÁÐ¸ß¶È int s,n;//functionbool dfs(int t);int main()

为什么小表驱动大表?_xsinx的博客-程序员宝宝_小表驱动大表原理

A.假如只有一个索引的话小表一趟for循环的代价+大表上使用B+树索引的代价&lt;大表一趟for循环的代价+小表使用B+树索引的代价B.假如使用块的嵌套循环连接的话内存中放小表的I/O代价小于内存中放大表的 I/O代价,数据库系统实现P108,简而言之,经过化简是 B(S)+B(S)B/M-1,由于加号的后面是定值,所以前面的值的话整体就是小的C.小表驱动大表的案例:in和exist...

Qt/C/C++ 计算时间差的几种方法_罗伯特祥的博客-程序员宝宝_c++时间差计算

Qt计算时间的两种方法:QTime elapsed(): msQTime currentTime():msC++计算时间的五种方法:clock():msGetTickCount():msgettimeofday(time_val*, NULL):usQueryPerformanceFrequency(LARGE_INTEGER*) &amp; QueryPerformanceCounter(LARGE_INTEGER*):ustime(NULL):s#include &lt;QTh

ElasticSearch学习笔记_程序猿历险记的博客-程序员宝宝_elasticsearch最新版本

提示:本学习笔记是参照尚硅谷视频写的,视频地址 视频地址文章目录前言第一章 ElasticSearch概述1.1、ElasticSearch是什么1.2、全文搜索引擎一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。第一章 ElasticSearch概述1.1、ElasticSearch是什么Elasticsea.

jdk1.8版本切换至1.6遇到的问题&分析_不一样的程序员的博客-程序员宝宝_1.6升1.8 坑 spring

背景由于工作原因,我的电脑上目前安装了jdk1.6和jdk1.8 两个版本,并且都是安装版本。 之前因为一些原因(苏宁对接sdk,阿里开发规约)本地默认安装的是jdk.18版本, 但是公司的大部分项目都是用jdk1.6编译,所以后来我本地的默认版本采用了1.6,切换至1.6后,发现阿里Java编码插件无效,经查阅文档得知,阿里Java规划的jdk版本至少是1.8。参考:http://...

随便推点

LAMP环境搭建及创建自己的博客_Esl-PYB的博客-程序员宝宝

**1.**在安装centos系统时,最主要的是软件选择。选择含有GUI的服务器并选上“开发工具”和“相容性函数库”。**2.**进入centos界面后,打开终端,然后su root,并输入你安装系统时为root用户设置的密码,以root用户身份进行操作(因为如果你只是以一个普通的用户的身份进行操作的话会有很多权限没给出)。**3.**先安装Apache:a.安装yum -y instal...

Teradata自定义函数Replace_cuikui4734的博客-程序员宝宝

Teradata没有函数replace,为了方便使用,定义了一个。其实也挺简单的,描述如下:一、用c编写一个replace函数,挺简单,也可以在网上找到源码,编译通过,能达到目的即可。二、运行一个bteq,将自定义函数载入。详细...

ASP+Jmail+163在线发送邮件系统(zhuan)_anku0825的博客-程序员宝宝

飘易今天给某网站留言板写了个在线发送邮件的功能,采用Jmail+ASP+163的smtp邮件服务器构成。 其实Jmail发送邮件是一个非常重要的功能,在Email网络营销方面,利用Jmail群发邮件是一门必须掌握的技术。对于需要验证会员信息,定期给会员发送消息的网站来说,jmail实在是太重要了。 下面,飘易就结合ASP脚本来写一段JMAIL发送邮件的...

字符串的三种存储方式_嵌入式与Linux那些事的博客-程序员宝宝_字符串常用的存储方式

工科生一枚,热衷于底层技术开发,有强烈的好奇心,感兴趣内容包括单片机,嵌入式Linux,Uboot等,欢迎学习交流!爱好跑步(减肥~~),打篮球(菜鸡一枚~~),睡觉。欢迎加入嵌入式与Linux学习交流群,群号1061551626(备注CSDN)。群内主要分享嵌入式学习经验,问题答疑,各种视频,电子书等。文章目录定长顺序存储动态数组存储块链存储  在数据结构中,字符串要单独用一种存储结构来存储,称为串存储结构。这里的串指的就是字符串。无论学习哪种编程语言,操作最多的总是字符串。我们平常使用最多的.

centos中redis部署(主备及单机)_酷酷的兵的博客-程序员宝宝

Centos中Redis搭建一、单机版redis安装配置1.解压redis安装包1.1 上传到 /usr/local1.2 tar -zxvf redis-4.0.8.tar.gz2.安装redis2.1 cd redis- redis-4.0.82.2 Make3.编辑/usr/local/redis-4.0.8/redis.confbind 1...

动画程序编写——DirectDraw之旅(1)_simbi的博客-程序员宝宝

DirectDraw——也许大多数人闻所未闻,但当提到 DirectX 恐怕每一个 游戏爱好者都再熟悉不过了,但是只知道那是一个很多游戏都要求的必须安装的程序,再多就无从所知了,那么它到底能为我们的游戏干什么呢,其实它又叫 Game SDK,它最大的特点是直接对硬件的抽象层(HAL)进行操作,利用 此特点可制作出高性能的Windows游戏。http://www. microsoft.com/dir

推荐文章

热门文章

相关标签