tp5 微信公众号 消息模板接口使用

小程序下单后 微信公众号也一并提示功能

首先要去微信公众号开通模板消息

通过之后 可以进行申请模板id

实现代码

 public function guestbook(){
        //此处模拟前端表单ajax提交
        $input_data = input("post.");
//        if(isset($input_data) && !empty($input_data)){


            $openid = '用户openid';
            $time_str = strtotime(date("Y-m-d 0:0:0",time()));
            //检查今天是否有提交过
//            $check = Db::name("guestbook")->where('openid',$openid)->where('create_time',">=",$time_str)->find();
//            if(isset($check) && !empty($check)){
//                return ['code'=>-3];
//            }else{
                //提交成功,触发信息推送
                $data=[
                    'touser'=>$openid,
                    'template_id'=>'模板消息id',
                    'url'=>'http://weixin.qq.com/download',
                    'topcolor'=>"#FF0000",
                    'data'=>array(
                        'first'=>array('value'=>"订单支付成功",'color'=>"#fc0101"),
                        'keyword1'=>array('value'=>1111,'color'=>"#173177"),
                        'keyword2'=>array('value'=>'1111','color'=>"#173177"),
                        'keyword3'=>array('value'=>1800,'color'=>"#173177"),
                        'keyword4'=>array('value'=>'1111','color'=>"#173177"),
                        'remark'=>array('value'=>"您的报名信息已提交,请耐心等待",'color'=>"#173177"),
                    )
                ];

                $get_all_access_token = $this->getWxAccessToken();


                $json_data= str_replace("\\/", "/", json_encode($data, JSON_UNESCAPED_UNICODE));;//转化成json数组让微信可以接收


                $url="https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".$get_all_access_token;//模板消息请求URL

                $res=$this->https_request($url,urldecode($json_data));//请求开始


                $res=json_decode($res,true);

                if($res['errcode']==0 && $res['errcode']=="ok"){
                    return ['code'=>1];
                }else{
                    return ['code'=>-4];
                }
           // }
        //}
    }




    public function https_request($url,$data = null){
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
        if (!empty($data)){
            curl_setopt($curl, CURLOPT_POST, 1);
            curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
        }
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($curl);
        curl_close($curl);
        return $output;
    }

用户的openid 在上篇说过 https://blog.csdn.net/wanganji5252/article/details/100929442

可以和小程序中的unionid 进行比对 拿出保存好的openid

getWxAccessToken() 方法也在上篇中进行说明

这样就可以给指定的用户发送相对应的模板消息了

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值