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

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

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

以下为开发步骤:

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

分享给朋友:

相关文章

Ajax实现php页面下拉加载翻页(从mysql中获取数据)

Ajax实现php页面下拉加载翻页(从mysql中获取数据)

下拉翻页是通过ajax请求,把页码传入php处理页,在php处理页中获得分页后到数据库中查询数据并返回json数组对象。演示图操作之前先建数据库,百度自行下载JQ库!基本流程:1.在首页中调用6条数据...

PHP原生对接QQ互联/实现QQ登录,SDK2.1版本/超级详细!

PHP原生对接QQ互联/实现QQ登录,SDK2.1版本/超级详细!

在目前在大部分网站中都会接入QQ登录或者微信登录,目前QQ互联的接入门槛是比较低的,官方的前提是必须备案网站!!如果网站没有备案请某宝自行搜索一下其他方法。用QQ登录接口,首先要到QQ互联完善开发者认...

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

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

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

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

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

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

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

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

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