// 发送一个get请求 $url 发送地址
function getAction($url)
{//初始化操作$curl = curl_init($url);//设置请求参数curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//设置结果的转换curl_setopt($curl, CURLOPT_TIMEOUT, 10);//设置超时时间// 发送请求//FALSE 禁止 cURL 验证对等证书(peer‘s certificate)。curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); //true验证主机$res = curl_exec($curl);curl_close($curl);return $res;
}
/*$url 请求的接口地址  $data 上传资源的地址
*/
function postAction($url, $data)
{$json_data = json_encode($data,JSON_UNESCAPED_UNICODE);$curl = curl_init($url);curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);curl_setopt($curl, CURLOPT_TIMEOUT, 10);curl_setopt($curl, CURLOPT_POST, 1);curl_setopt($curl, CURLOPT_POSTFIELDS, $json_data);curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); //true验证主机curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type:application/json;charset=utf-8','Content-Length: '.strlen($json_data)));//发送$res = curl_exec($curl);curl_close($curl);return $res;
}
function getAccessToken(){$appid = "";$secret = "";$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$secret";$res = getAction($url);$result = json_decode($res,true);$token = $result['access_token'];$token_invalid_time=(time()*1000)+(intval($result["expires_in"])*1000);$array= array("token"=>$token,"token_invalid_time"=>$token_invalid_time);$myfile = fopen("./wx_config/token.txt", "w") or die("Unable to open file!");$txt = json_encode($array);fwrite($myfile, $txt);return $token;}function get_current_token(){$str = file_get_contents("./wx_config/token.txt");//将整个文件内容读入到一个字符串中//return json_decode($str,true)['token'];if($str){$result = json_decode($str,true);$token=$result['token'];$token_invalid_time=$result['token_invalid_time'];if((time()*1000) > $token_invalid_time){return getAccessToken();}else{return $token;}}else{return getAccessToken(); }
}if($_GET){$action = $_GET['action'];$data=$_GET;if($action == 'send_template_message'){// {{first.DATA}}// 任务名称:{{keyword1.DATA}}// 相关人员:{{keyword2.DATA}}// {{remark.DATA}}$token = get_current_token();$url="https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=$token";$params = array("touser"=>$data['openid'],"template_id"=>"模版id","url"=>"","topcolor"=>"#FF0000","data"=>array("first"=>array("value"=>"你好,微OA有新任务",// "color"=>"#173177"),"keyword1"=>array("value"=>"请假待审批"),"keyword2"=>array("value"=>"fish"),"remark"=>array("value"=>"请尽快处理"),));echo postAction($url,$params);}
}

微信发送模版消息-php相关推荐

  1. 微信发送模版消息,PHP代码简单案例

    function http_request($url,$data=array()){$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl ...

  2. 微信小程序发送模版消息

    使用说明 步骤一:获取模板ID 有两个方法可以获取模版ID 通过模版消息管理接口获取模版ID(详见模版消息管理) 在微信公众平台手动配置获取模版ID 登录https://mp.weixin.qq.co ...

  3. 微信公众号发送模版消息详细过程

    前置条件,具有模版消息权限的公众号(可以直接用测试号),rest测试工具(windows推荐使用火狐浏览器插件RestClient,会翻墙的话可以用谷歌的插件Postman好像) 如下 1.配置配置模 ...

  4. php图文消息带代码详细注释,微信发送图文消息代码整理

    微信发送图文消息代码整理 这个就不多说什么了, 下单成功后微信提示图文消息.核心代码如下 if(!empty($openid)){ $wxinfo=curlgetcontents("http ...

  5. Python定时向微信发送天气消息和每日一言[wxpy、apscheduler]

    Python定时向微信发送天气消息和每日一言 Python定时向微信发送天气消息和每日一言 环境描述 引用库 部分代码 开发问题反馈和交流 Python定时向微信发送天气消息和每日一言 通过wxpy拉 ...

  6. 使用Python实现微信发送文本消息、图片以及附件

    使用Python实现微信发送文本消息.图片以及附件 因为目前很多微信账号已经不支持网页版的操作了,因此无法使用之前的itchat这一类对微信进行操作. 为此,选择对微信PC端进行开发. 选择的方式比较 ...

  7. 企业微信发送应用消息php,企业微信如何发送应用消息?及时发布重要通知

    很多企业以前向员工发布通知的时候,要么是通过开会的方式传达,要么是通过文档的方式来通知员工.可是这样效率低,而且结果往往通知不到位.故此,现在很多企业开始使用企业微信发送应用消息来发布内部的重要通知. ...

  8. android仿微信语音聊天功能,Android仿微信发送语音消息的功能及示例代码

    微信的发送语音是有一个向上取消的,我们使用ontouchlistener来监听手势,然后做出相应的操作就行了. 直接上代码: //语音操作对象 private mediaplayer mplayer ...

  9. 微信发送接受消息测试用例

    微信发送接受消息测试用例主要包括功能测试,界面测试,易用性测试,安全测试,性能测试,兼容性测试六个方面. 功能测试: 发送/接受各页面按键功能是否正常. 输入框可输入内容测试(汉字,字符,表情等)能正 ...

最新文章

  1. 2022-2028年中国除螨仪行业市场前瞻与投资战略规划分析报告
  2. 比较2个DataTable中的内容是否相同的方法
  3. 几种常用通信协议:IIC协议、SPI协议、UART协议
  4. 如何让制定的计划实施起来
  5. CALL TRANSACTION用法
  6. SpringBoot+MyBatisPlus实现插入关联多表数据的接口(企业质检管理举例)
  7. 【NLP】中文情感分类单标签
  8. APUE第八章学习札记之自建简单解释器以及参数分析
  9. Object-C基础入门笔记(一)
  10. 在IIS上部署你的ASP.NET Core项目
  11. 接口测试实例(jmeter)
  12. python安装笔记_Python学习笔记(一)python的安装和配置
  13. 高手也不好当,压力更大
  14. AOP面向切面编程(1.6w字长文讲清AOP)
  15. unix操作系统的特点
  16. 计算机 科研进度安排,研究计划进度安排及预期目标-浙江大学现代教务管理系统.doc...
  17. java中jsp是什么_JSP是什么?
  18. 『R语言Python』使用logging、log4r写日志
  19. CSS图片底部默认边距三种解决办法
  20. 一次性奖金是否选择并入综合所得测算表

热门文章

  1. torch中的乘法符号(*),torch.mm()和torch.matmul(),torch.mul(), torch.bmm()
  2. 预产期计算器在线计算生男生女计算机,预产期计算器公式
  3. mysql简单防注入_mysql防止sql注入的方法
  4. 上海5月社保费缴纳时间安排,缴费减免了多少?应该缴纳多少?
  5. 纪中游记 - Day 4
  6. js 循环数组时,splice 删除数据注意的问题
  7. 计算机进到系统闪屏没有桌面,电脑闪屏了?几个步骤可以轻松解决
  8. SVN冲突的几种情况以及相应的解决方法
  9. 质量效能研发部php,百度质量效能研发部【社招/实习】
  10. 任正非华为手机不用鸿蒙,任正非说鸿蒙媲美iOS不用三年,华为若出鸿蒙手机你会买吗?...