微信关注 自动回复 关注消息 php
<?php
header("Content-type: text/html; charset=utf-8");
$nonce = $_GET['nonce'];
$token = 'winxin';
$timestamp = $_GET['timestamp'];
if (isset($_GET['echostr'])) {
if (bindServerCheck()) {
echo $_GET['echostr'];
}
exit();
}
responseMsg();
//消息回复
function responseMsg() {
//1.获取到微信推送过来post数据(xml格式)
$postArr = $GLOBALS['HTTP_RAW_POST_DATA'];
//2.处理消息类型,并设置回复类型和内容
$postObj = simplexml_load_string($postArr, 'SimpleXMLElement', LIBXML_NOCDATA);
//判断该数据包是否是订阅de事件推送
if (strtolower($postObj->MsgType) == 'event') {
//如果是关注 subscribe事件
if (strtolower($postObj->Event) == 'subscribe') {
$toUser = $postObj->FromUserName;
$fromUser = $postObj->ToUserName;
$time = time();
$msgType = 'text';
$content = '欢迎关注我的微信公众号 test 123';
//修改为
if (is_utf8($content)) {
$content = $content;
} else {
$content = iconv('gb2312', 'UTF-8//IGNORE', $content);
}
$template = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
</xml>";
$info = sprintf($template, $toUser, $fromUser, $time, $msgType, $content);
echo $info;
}
}
}
// 开发者模式绑定校验
function bindServerCheck($token) {
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$tmpArr = array(
$token,
$timestamp,
$nonce
);
sort($tmpArr);
$tmpStr = implode($tmpArr);
$tmpStr = sha1($tmpStr);
if ($tmpStr == $signature) {
return true;
} else {
return false;
}
}
function to_utf8($in)
{
if (is_array($in)) {
foreach ($in as $key => $value) {
$out[to_utf8($key)] = to_utf8($value);
}
} elseif(is_string($in)) {
if(mb_detect_encoding($in) != "UTF-8")
return utf8_encode($in);
else
return $in;
} else {
return $in;
}
return $out;
}
function is_utf8($str)
{
return preg_match('//u', $str);
}
?>
微信关注 自动回复 关注消息 php相关推荐
- 微信公众号免开发——被关注自动回复2条消息
微信公众号的被关注回复,只能设置一条消息.那么如何实现被关注自动回复2条消息呢?这里分享一个公众号运营实用经验,简单易学,免费,完全不需要开发,大家一边看文章,一边实操,喜欢有用记得点个赞! &quo ...
- 微信公众号开发之文本消息自动回复,以及系统关注自动回复,php代码
以tshop为例 直接上代码: 企业 cc_wx_sys表为自建,存储系统消息的配置的 字段: id type key status <?php /*** tpshop* =========== ...
- 微信公众号-关注取消关注后图文和普通消息自动回复
当用户发送消息给公众号时(或某些特定的用户操作引发的事件推送时),会产生一个POST请求,开发者可以在响应包(Get)中返回特定XML结构,来对该消息进行响应(现支持回复文本.图片.图文.语音.视频. ...
- 如何设置微信公众号关注后自动回复多条图文链接
对于设置微信公众号关注后自动回复多条图文链接,第三方平台微号帮提供了粉丝关注定时推送功能实现,可以设置微信公众号关注后自动回复多条图文链接,及时帮助公众号激发关注粉丝兴趣,制作需求;可以设置关注延迟推 ...
- 微信公众号监听 关注/取消关注事件 消息接收与响应处理(比较细微)
从官方文档可以看出,他做到了简简单单,但没有做到明明白白. 那么接下来我首先说下文中的url,很多人都不知道这个url,其实他就是 当这些正准备好之后,直接上代码 //微信推送事件 url@Reque ...
- Spring项目接入微信关注/取消关注事件监控(含代码demo,自动回复图文)
微信官方文档地址:关注/取消关注事件 | 微信开放文档 以上,文档提到:用户在关注与取消关注公众号时,微信会把这个事件推送到开发者填写的URL,接下来我们就来看看这个URL怎么配置. [配置步骤]: ...
- 微信公众号实现跟关注用户进行消息的交互功能(2)实现交互功能
一.解析微信服务器传来的消息 因为微信服务器发送过来的是xml格式的消息,所以我们可以采用 开源框架dom4j去解析xml . 所用到的jar 包是:dom4j-1.6.1.jar 官网下载地址:ht ...
- 一图了解App跳转微信小程序关注公众号,推送消息
一图了解App跳转微信小程序关注公众号,推送消息:
- 网站通过手机微信扫码关注直接登录系统--java版
一.场景 1.有自己的一个网站: 2.点击登录按钮后,弹出公司公众号二维码: 3.用户扫码后,若之前没有关注公众号,需要点击关注公众号,然后直接登录系统: 4.若用户扫码后,之前已经关注过公众号,则直 ...
最新文章
- ps aux参数说明
- 9.可变参数创建不可变集合
- SAP WM Storage Type配置界面里的Addn to Stock
- 特征和工具概览(SQL Server 2008)
- 【控制】传递函数零极点解析
- 2680 Problem F: Coin Game
- 【java学习之路】(java框架)006.springIOC
- 蓝桥杯刷题 -- 第六届蓝桥杯
- 湖南大学操作系统期末考试之英文PPT复习提纲
- cad刷新快捷键_实用的CAD技巧
- 解决可视化界面的时候灰屏【已解决】
- 利用Google翻译实现网站国际化——js插件
- B2C商城系统优势开发源码
- zyf sql语句
- 计算机word上下左右边距,Word页边距调整设置(上下左右边距,2003-2013)
- 双绞线传输距离_双绞线电缆施工“潜规则”
- Pygame实战:多年后“魂斗罗”像素风归来 不止是经典与情怀@全体成员
- 产品需求文档(PRD)写作(一) 写前准备(信息结构图)
- 树莓派 zero 通过 max31865 连接 PT100 热电阻 测量温度
- 颠覆平庸 在技术上持续精进
热门文章
- DC音乐播放器开发日记
- 一个月通过大学英语四级考试
- 将电话号码从excel导入手机联系人
- 迅龙数据恢复软件真的很万能
- java暴力破解校园网_记一次暴力爆破校园网认证密码(附源码)
- React学习笔记(五)之父子组件传递参数
- 在laravel中集成swoole,使用hhxsv5/laravel-s扩展
- QQ兼容android版本6,QQ浏览器6.6.1版本支持安卓7.0 支持多项新特性
- 玩转数据恢复之R-Studio的使用常见问题解答
- 7-4 集合相似度 (25 分)