欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP微信模板消息操作示例

程序员文章站 2024-03-11 13:25:19
本文实例讲述了php微信模板消息操作方法。分享给大家供大家参考,具体如下: 微信sdk:

本文实例讲述了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程序设计有所帮助。