PHP发送短信
1.要拼接接收的手机号和短信
public function sendcode()
{
$parpm = input();
$valist = $this->validate($parpm, [
'phone' => 'require|regex:1[3-9]\d{9}'
]);
if ($valist !== true) {
$res = [
'code' => 400,
'msg' => $valist
];
return Json($res);
die;
}
$timer = cache('register_time_' . $parpm['phone']);
if (time() - $timer < 60) {
$rs = [
'code' => '500',
'msg' => '发送太过频繁'
];
echo json_encode($rs);
die;
}
$co = mt_rand(1000, 9999);
$code = '%23code%23%3d' . $co;
//发送短信验证
// $resule=sendmsg($parpm['phone'],$code);
$resule = true;
if ($resule === true) {
cache('register_code_' . $parpm['phone'], $co, 180);
cache('register_time_' . $parpm['phone'], time(), 180);
$re = [
'code' => 200,
'msg' => '短信发送成功',
'data' => "$code"
];
echo json_encode($re);
die;
} else {
$re = [
'code' => 400,
'msg' => $resule
];
echo json_encode($re);
die;
}
}
2.拼接要发送短信的要求
if(!function_exists('sendmsg')){
function sendmsg($phone,$code){
$gateway=config('msg.gateway');
$appkey=config('msg.appkey');
$tpl_id=config('msg.tpl_id');
$url=$gateway.'?mobile='.$phone.'&tpl_id='.$tpl_id.'&tpl_value='.$code.'&key='.$appkey;
$res=curl_require($url,false,[],false);
if(!$res){
return '请求失败';
}
$arr=json_decode($res,true);
if(isset($arr['code'])&&$arr['code']==10000){
return true;
}else{
return false;
}
}
}
3.向第三方发送请求
if(!function_exists('curl_require')){
function curl_require($url,$post=true,$parpm=[],$https=false){
$ch=curl_init($url);
if($post){
curl_setopt($ch,CURLOPT_PORT,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,$parpm);
}
if($https){
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
}
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$res=curl_exec($ch);
curl_close($ch);
return $res;
}
}
PHP发送短信的更多相关文章
- PHP发送短信功能
发送短信的功能主要在于获得短信接口后,在函数中模仿用户行为,例如浏览器跳转输出短信接口的链接. 需要运用的函数为 curl_init(); curl_setopt(); curl_exec(); cu ...
- WPF MVVM下做发送短信小按钮
最近做一个项目,因为涉及到注册,因此需要发送短信,一般发送短信都有一个倒计时的小按钮,因此,就做了一个,在此做个记录. 一.发送消息 没有调用公司的短信平台,只是模拟前台生成一串数字,将此串数字输出一 ...
- NetCore 阿里大于发送短信
使用阿里大于API发送短信,但阿里没有提供NetCore 的API,自己看了下源码重写了发短信这个部分 public class MessageSender { private readonly st ...
- android 中调用接口发送短信
android中可以通过两种方式发送短信 第一:调用系统短信接口直接发送短信:主要代码如下: //直接调用短信接口发短信 SmsManager smsManager = SmsManager.getD ...
- Android 学习第13课,android 实现发送短信的功能
1. 界面布局 界面代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ...
- ios调用本地拨打电话,发送短信
电话.短信是手机的基础功能,iOS中提供了接口,让我们调用.这篇文章简单的介绍一下iOS的打电话.发短信在程序中怎么调用. 1.打电话 [[UIApplication sharedApplicat ...
- Android发送短信核心代码
核心代码:(1)SmsManager manager = SmsManager.getDefault(); //获得默认的消息管理器(2)ArrayList<String> list = ...
- Android发送短信
// 发送短信 public void sendMsg(){ String content = edtSend.getText().toString(); SmsManager smsManager ...
- a标签的妙用-拨打电话、发送短信、发送邮件
前端时间在做手机WAP网站时,遇到需要点击页面上显示的电话号能直接拨号的需求,查找资料发现可以使用html的a标签完美实现该需求!记录下来以备后用...... 目前主流手机浏览器对H5的支持已经很不错 ...
- java发送短信--httpclient方式
最近头让我写个发送短信的java程序检测BI系统,检查数据库是否有异常发送,有则发送短信到头的手机里.这里我直说httpclient方式的get请求方式,并且已经有方式的短信的接口了,所以只要再加上参 ...
随机推荐
- 《Java知识应用》Java-线程池(ScheduledExecutorService)
先回顾一下,Runnable 的使用方法. package demo.knowledgepoints.scheduledtask.run; /*** * 线程类 */public class Thre ...
- Typroa 常用快捷键
Typora 常用快捷键 文件操作 Ctrl + N :新建文件 Ctrl + shift + N :新建窗口 Ctrl + O :打开 Ctrl + P : 快速打开(快速打开之前编辑过的历史文件) ...
- Ansible自动化部署入门到进阶笔记
目录 一.基本部署 安装Ansible Ansible配置文件 定义Inventory 使用秘钥方式连接 使用帮助 Ansible命令应用基础 二.常见模块 三.Ansible playbook 四. ...
- 松软科技Web课堂:JavaScript For 循环
循环可多次执行代码块. JavaScript 循环 假如您需要运行代码多次,且每次使用不同的值,那么循环(loop)相当方便使用. 通常我们会遇到使用数组的例子: 不需要这样写: text += ca ...
- Sunset: Nightfall Vulnhub Walkthrough
靶机链接: https://www.vulnhub.com/entry/sunset-nightfall,355/ 主机扫描: ╰─ nmap -p- -A 10.10.202.162Starting ...
- 【zabbix告警监控】配置zabbix监控nginx服务
zabbix监控nginx,nginx需要添加--with-http_stub_status模块 使用zabbix监控nginx,首先nginx需要配置开启ngx_status.但是我这边nginx安 ...
- python实现智能语音天气预报
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 飞奔的帅帅 PS:如有需要Python学习资料的小伙伴可以加点击下 ...
- js中cookie设置、获取与清除
// 设置cookie setCookie (cname, cpwd, exdays) { var exdate = new Date()// 获取时间 exdate.setTime(exdate.g ...
- ES 6新语法
一.块级作用域绑定 回顾:使用var关键字定义变量 定义 = 声明 + 赋值: 1. 可以一次定义多个变量 2. 定义时可以只声明不赋值 3. 定义之后可以随时修改变量的值 4. 变量声明会被提升 ...
- 配置Postman通过OAuth 2 implicit grant获取Dynamics 365 CE Online实例的Access Token
微软动态CRM专家罗勇 ,回复335或者20190516可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me. 对于测试Web API, Get 类型,不需要设定特别reque ...