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

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

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

以下为开发步骤:

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

分享给朋友:

相关文章

PhpSpreadsheet的下载介绍和简单使用(导出文件和上传excel数据到数据库)

PhpSpreadsheet的下载介绍和简单使用(导出文件和上传excel数据到数据库)

由于PHPExcel已经不再维护,PhpSpreadsheet是PHPExcel的下一个版本。PhpSpreadsheet是一个用纯PHP编写的库,并引入了命名空间,PSR规范等。这里简单介绍下Php...

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

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

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

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

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

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

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

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

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