PHP微信模板消息操作示例

发布时间 - 2026-01-11 02:06:25    点击率:

本文实例讲述了PHP微信模板消息操作方法。分享给大家供大家参考,具体如下:

微信SDK:

<?php
class Oauth {
  //获得全局access_token
  public function get_token(){
  //如果已经存在直接返回access_token
    //if($_SESSION['access_token'] && $_SESSION['expire_time']>time()){
      //return $_SESSION['access_token'];
    //}else{
    //1.请求url地址
    $appid = APPID;  //appid
    $appsecret = APPSECRET;  //appsecret
    $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$appsecret; //请求地址
    //2初始化curl请求
    $ch = curl_init();
    //3.配置请求参数
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); // 从证书中检查SSL加密算法是否存在
    curl_setopt($ch, CURLOPT_URL, $url);  //请求
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //不直接输出数据
    //4.开始请求
    $res = curl_exec($ch); //获取请求结果
    if( curl_errno($ch) ){
      var_dump( curl_error($ch) ); //打印错误信息
    }
    //5.关闭curl
    curl_close( $ch );
    $arr = json_decode($res, true); //将结果转为数组
    //$_SESSION['access_token']=$arr['access_token'];  //将access_token存入session中,可以不存,每次都获得新的token
    //$_SESSION['expire_time']=time()+7200;
    return $arr['access_token'];
    //}
  }
  //推送模板信息  参数:发送给谁的openid,客户姓名,客户电话,推荐楼盘(参数自定)
  function sendMessage($openid,$customName,$customPhone,$reportBuilding) {
    //获取全局token
    $token = $this->get_token();
    $url="https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".$token; //模板信息请求地址
    //发送的模板信息(微信要求json格式,这里为数组(方便添加变量)格式,然后转为json)
    $post_data = array(
        "touser"=>$openid, //推送给谁,openid
        "template_id"=>"nKu4eyktzxOslxq0KfPxhGXbiOo873K9mIxKvs23EVU", //微信后台的模板信息id
        "url"=>"http://www.baidu.com", //下面为预约看房模板示例
        "data"=> array(
            "first" => array(
                "value"=>"您有新客户,请及时查看!",
                "color"=>"#173177"
            ),
            "customName"=>array(
                "value"=>$customName, //传的变量
                "color"=>"#173177"
            ),
            "customPhone"=>array(
                "value"=>$customPhone,
                "color"=>"#173177"
            ),
            "reportBuilding"=> array(
                "value"=>$reportBuilding,
                "color"=>"#173177"
            ),
            "reportTime"=> array(
                "value"=>date('Y-m-d H:i:s'),
                "color"=>"#173177"
            ),
            "remark"=> array(
                "value"=>"请及时联系客户哦!",
                "color"=>"#173177"
            ),
        )
    );
    //将上面的数组数据转为json格式
    $post_data = json_encode($post_data);
    //发送数据,post方式
    //配置curl请求
    $ch = curl_init();  //创建curl请求
    curl_setopt($ch, CURLOPT_URL,$url); //设置发送数据的网址
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //设置有返回值,0,直接显示
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0); //禁用证书验证
    curl_setopt($ch, CURLOPT_POST, 1);  //post方法请求
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);//post请求发送的数据包
    //接收执行返回的数据
    $data = curl_exec($ch);
    //关闭句柄
    curl_close($ch);
    $data = json_decode($data,true); //将json数据转成数组
    return $data;
  }
  //获取模板信息-行业信息(参考,示例未使用)
  function getHangye(){
    //用户同意授权后,会传过来一个code
    $token = $this->get_token();
    $url = "https://api.weixin.qq.com/cgi-bin/template/get_industry?access_token=".$token;
    //请求token,get方式
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
    $data = curl_exec($ch);
    curl_close($ch);
    $data = json_decode($data,true); //将json数据转成数组
    //return $data["access_token"];
    return $data;
  }
}

PHP代码:

//推送模板信息给置业顾问
$send = new Oauth();  //实例化类
$send->sendMessage($zhiyeguwen,$clientName,$tel,$product);  //调用方法

完成,微信模板信息不难,有问题互相交流!!!

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP微信开发技巧汇总》、《PHP编码与转码操作技巧汇总》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。


# PHP  # 微信  # 模板消息  # PHP实现微信模拟登陆并给用户发送消息的方法【文字  # 图片  # 图文】  # 微信小程序图片选择、上传到服务器、预览(PHP)实现实例  # PHP仿微信多图片预览上传实例代码  # PHP开发的微信现金红包功能示例  # php实现微信模拟登陆、获取用户列表及群发消息功能示例  # PHP对接微信公众平台消息接口开发流程教程  # php判断页面是否是微信打开的示例(微信打开网页)  # 基于php的微信公众平台开发入门实例  # php实现微信公众平台账号自定义菜单类  # PHP微信支付开发实例  # PHP 微信支付类 demo  # PHP实现微信图片上传到服务器的方法示例  # 请及时  # 转成  # 操作技巧  # 相关内容  # 句柄  # 感兴趣  # 给大家  # 谁的  # 每次都  # 更多关于  # 错误信息  # 所述  # 数据包  # 看房  # 跳过  # 程序设计  # 是否存在  # 自定  # 操作方法  # 不直接 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】  如何在Tomcat中配置并部署网站项目?  黑客如何利用漏洞与弱口令入侵网站服务器?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  浅析上传头像示例及其注意事项  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  使用C语言编写圣诞表白程序  ,网页ppt怎么弄成自己的ppt?  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  如何快速重置建站主机并恢复默认配置?  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  什么是javascript作用域_全局和局部作用域有什么区别?  googleplay官方入口在哪里_Google Play官方商店快速入口指南  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  Python正则表达式进阶教程_复杂匹配与分组替换解析  Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  如何用AI帮你把自己的生活经历写成一个有趣的故事?  昵图网官网入口 昵图网素材平台官方入口  小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置  实现点击下箭头变上箭头来回切换的两种方法【推荐】  如何在IIS管理器中快速创建并配置网站?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  什么是JavaScript解构赋值_解构赋值有哪些实用技巧  中山网站推广排名,中山信息港登录入口?  如何快速搭建安全的FTP站点?  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives  Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  Linux系统命令中screen命令详解  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤  Internet Explorer官网直接进入 IE浏览器在线体验版网址  香港服务器WordPress建站指南:SEO优化与高效部署策略  高端网站建设与定制开发一站式解决方案 中企动力  深入理解Android中的xmlns:tools属性  晋江文学城电脑版官网 晋江文学城网页版直接进入  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  微信h5制作网站有哪些,免费微信H5页面制作工具?  详解Android中Activity的四大启动模式实验简述  如何用AWS免费套餐快速搭建高效网站?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  Laravel怎么清理缓存_Laravel optimize clear命令详解