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

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

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

以下为开发步骤:

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

分享给朋友:

相关文章

file_get_contents()对指定网页或API实现get+post请求并传输获取数据

file_get_contents()对指定网页或API实现get+post请求并传输获取数据

//GET请求方法 $url="https://www.baidu.com"; $ret=file_get_contents($url); $list = ...

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

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

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

PHP实现qq邮箱发送自定义邮件

PHP实现qq邮箱发送自定义邮件

本文实例讲述了PHP实现发送邮件的方法。不同类型的邮箱发送邮件的方式也是不同的。下面我们就先给大家举例介绍qq邮箱开启发送邮件服务的方法。首先我们登录qq邮箱,打开设置。然后点击账户开启POP3/SM...

免费接入微信登录接口获取openid(无须申请,直接调用)

免费接入微信登录接口获取openid(无须申请,直接调用)

简介免费接入微信登录接口获取openid(无须申请,直接调用,适合web、pc、手机端,全平台兼容)无缝衔接微信获取openid、微信头像地址、微信昵称信息拿到openid之后,就可以自行操作更多身份...

发表评论

访客

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