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

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

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

以下为开发步骤:

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://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://yizhanhongtu.cn/post/13.html

分享给朋友:

相关文章

php事务是什么,php原生事务的实现和mysql回滚操作

php事务是什么,php原生事务的实现和mysql回滚操作

事务就是一组原子性的SQL查询,或者说一个独立的工作单元。PHP事务四大特性原子性(Atomicity):事务是数据库的逻辑工作单位,它对数据库的修改要么全部执行,要么全部不执行。一致性(Consis...

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

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

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

ThinkPHP框架下使用七牛云上传图片(文件)与删除

ThinkPHP框架下使用七牛云上传图片(文件)与删除

七牛云好处:云存储,云加速,CDN镜像存储等等,自直观的说,就是把一些静态文件如:css、js、图片等存储到七牛云,然后通过一个分配的或者自己绑定的域名开启CDN加速去访问,这样既减少了自己的服务器压...