当前位置:首页 > 技术教程 > 脚本编程 > 正文内容

PHP实现发送微信模板消息(公众号版),附类文件

atao4年前 (2020-10-04)脚本编程2565

以下为开发步骤:

1.微信公众号为服务号且开通微信认证(其他类型账号不能发送)

2.ip白名单设置你的服务器ip(用于获取access_token)

3.网页授权你的域名(用于获取用户的openid)

4.开通模板消息并在模板库中选用模板

5.获取openid

6.发送模板消息

image.png

提供一个已经封好了的类文件,比较简单 可以直接调用

class WxTmp{
    //请求模板消息的地址
    const TEMP_URL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=";
    /**
    * 微信模板消息发送
    * @param $openid 接收用户的openid
    * return 发送结果
    */
    public function send($openid,$tokens){
    //$tokens = $this->getAccessToken($accesstoken);
    $url = self::TEMP_URL . $tokens;
    $params = [
    'touser' => $openid,
    'template_id' => 'B2Poe_5XVRu_I8jy8j_N-Kb7JEL_NL0qIj6YQTolkoo',//模板ID
    'url' => 'http://www.yizhanhongtu.cn/', //点击详情后的URL可以动态定义
    'data' =>
    [
    'first' =>
    [
    'value' => '您好!有访客访给您留言了。',
    'color' => '#173177'
    ],
    'user' =>
    [
    'value' => '张三',
    'color' => '#FF0000'
    ],
    
    'ask' =>
    [
    'value' => '您好,这是一条测试消息',
    'color' => '#173177'
    ],
    'remark' =>
    [
    'value' => '祝顺商祺',
    'color' => 'blue'
    ]
    ]
    ];
    $json = json_encode($params,JSON_UNESCAPED_UNICODE);
    return $this->curlPost($url, $json);
    }
    /**
    * 通过CURL发送数据
    * @param $url 请求的URL地址
    * @param $data 发送的数据
    * return 请求结果
    */
    protected function curlPost($url,$data)
    {
    $ch = curl_init();
    $params[CURLOPT_URL] = $url;    //请求url地址
    $params[CURLOPT_HEADER] = FALSE; //是否返回响应头信息
    $params[CURLOPT_SSL_VERIFYPEER] = false;
    $params[CURLOPT_SSL_VERIFYHOST] = false;
    $params[CURLOPT_RETURNTRANSFER] = true; //是否将结果返回
    $params[CURLOPT_POST] = true;
    $params[CURLOPT_POSTFIELDS] = $data;
    curl_setopt_array($ch, $params); //传入curl参数
    $content = curl_exec($ch); //执行
    curl_close($ch); //关闭连接
    return $content;
    }
}
$obj = new WxTmp();
$openid = '接受者的openid号';
$accesstoken= '公众号的access_token';
echo $obj->send($openid,$accesstoken);





扫描二维码推送至手机访问。

版权声明:本文由武景涛的博客发布,如需转载请注明出处。

本文链接:http://www.yizhanhongtu.cn/post/13.html

分享给朋友:

相关文章

GoEasy实现从php服务端到web客户端的实时通信和消息推送

GoEasy实现从php服务端到web客户端的实时通信和消息推送

GoEasy的网站标题是让Websocket更简单,但是呢我觉得虽然简单是简单了很多,但是它是收费的!!!而且还不是很便宜的样子,所以能用Websocket还是推荐用Websocket吧,毕竟这是基于...

组织结构图OrgChart.js的简单使用,实现树状图结构

组织结构图OrgChart.js的简单使用,实现树状图结构

OrgChart.js是什么?基于ES6的组织结构图插件。特征支持本地数据和远程数据(JSON)。基于CSS3过渡的平滑扩展/折叠效果。将图表对齐为4个方向。允许用户通过拖放节点更改组织结构。允许用户...

超简单的php无限极分类,生成递归数组并输出树状图

超简单的php无限极分类,生成递归数组并输出树状图

什么是无限级分类?无限级分类是一种分类技巧,例如部门组织,文章分类,学科分类等常用到无限级分类,将其简单理解成分类就好了。其实我们仔细想一下,生活中的分类简直太多了,衣服可以分为男装和女装,也可以分为...

php导出excel中数字会自动转换为科学计数法解决办法

php导出excel中数字会自动转换为科学计数法解决办法

原因:凡数字超过11位数,Excel 表格就会用科学记数法显示。如果要输入超过11位的数,得把单元格设为文本形式或在输入数字前先输入一个英文单引号(')或者加入制表符。数据导出不转换科学计数法...

php基于QRcode类生成二维码,类文件下载

php基于QRcode类生成二维码,类文件下载

使用PHP语言生成二维码,还是挺有难度的,除了调用生成二维码图片的接口除外,如果自己写代码生成,真的无从下手。然而,我们可以使用phpqrcode这个现成的类文件,PHP二维码生成类库,利用它可以轻松...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。