博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
发送公众号模板消息
阅读量:5299 次
发布时间:2019-06-14

本文共 2171 字,大约阅读时间需要 7 分钟。

<?php

class wxservice
{
/**
* @todo w微信服务号接口地址
*/
private static $appid = "---------";
private static $appsecret = "----------------";
private static $template_id = [
"1"=>"==========",//服务完成提醒
"2"=>"============",//派单成功通知
];
private static $token;

public function __construct (){

self::gettoken();
}

/**

* @todo 获取access_token
*/
public static function gettoken(){
if(!file_exists("./upload/token.txt")){
fopen("./upload/token.txt", "w+");
}
$file = file_get_contents("./upload/token.txt");
$file = json_decode($file,true);
if( $file['date']<time() ){

$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".self::$appid."&secret=".self::$appsecret;

$file = file_get_contents($url);
$file = json_decode($file,true);
$file['date'] = time() + $file['expires_in'] - 1200;
$fp = file_put_contents("./upload/token.txt", json_encode($file));
}
self::$token = $file['access_token'];
}

public static function send_service($openid,$info = [],$type = 1){

$url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".self::$token;
$arr = [
"touser"=>$openid,
"template_id"=>self::$template_id[$type],
"url"=>"",
"miniprogram"=>"",
"data"=>[
"first"=>[
"value"=>"{$info['first']}",
"color"=>"#173177"
],
"keyword1"=>[
"value"=>"{$info['keyword1']}",
"color"=>"#173177"
],
"keyword2"=>[
"value"=>"{$info['keyword2']}",
"color"=>"#173177"
],
"keyword3"=>[
"value"=>"{$info['keyword3']}",
"color"=>"#173177"
],
"remark"=>[
"value"=>"{$info['remark']}",
"color"=>"#173177"
],
]
];
$msg = self::postcurl($url,json_encode($arr));
return $msg;

}

private static function postcurl($submitUrl,$postData = null)

{
//提交菜单
$curl = curl_init($submitUrl);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//SSL证书认证
curl_setopt($curl, CURLOPT_HEADER, 0); // 过滤HTTP头
curl_setopt($curl,CURLOPT_RETURNTRANSFER, 1);// 显示输出结果
curl_setopt($curl,CURLOPT_POST,true); // post传输数据
curl_setopt($curl,CURLOPT_POSTFIELDS,$postData);// post传输数据
$responseText = curl_exec($curl);
if($responseText == false)
{
throw new IException(curl_error($curl));
}
curl_close($curl);
return json_decode($responseText,true);
}
}

转载于:https://www.cnblogs.com/zlking/p/11447266.html

你可能感兴趣的文章
开发进度一
查看>>
MyBaits学习
查看>>
管道,数据共享,进程池
查看>>
CSS
查看>>
[LeetCode] 55. Jump Game_ Medium tag: Dynamic Programming
查看>>
[Cypress] Stub a Post Request for Successful Form Submission with Cypress
查看>>
程序集的混淆及签名
查看>>
thinkphp框架 中 ajax 的应用
查看>>
JAVA排序(一) Comparable接口
查看>>
判断9X9数组是否是数独的java代码
查看>>
00-自测1. 打印沙漏
查看>>
UNITY在VS中调试
查看>>
P1182 数列分段`Section II` P1316 丢瓶盖 二分答案
查看>>
SDUTOJ3754_黑白棋(纯模拟)
查看>>
Scala入门(1)Linux下Scala(2.12.1)安装
查看>>
laravel
查看>>
如何改善下面的代码 领导说了很耗资源
查看>>
Quartus II 中常见Warning 原因及解决方法
查看>>
高德地图 – 1.问题集锦
查看>>
php中的isset和empty的用法区别
查看>>