这篇文章介绍的内容是关于PHP微信开发之自动回复,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

1.关键词回复文本内容

首先我们需在LaneWeChat/core/aes/wechatrequest.lib.php下面的text()方法中需要进行一些修改,代码如下:public static function text(&$request){

// $content = '收到文本消息';

// return ResponsePassive::text($request['fromusername'], $request['tousername'], $content);

$mpid = $_GET['id'];

$content = $request['content'];

$where['mp_id'] = $mpid;

$where['keyword'] = $content;

$data = M('mp_reply_rule')->where($where)->find();

if ($data) {

$reply_id = $data['reply_id'];

$type = $data['type'];

if ($type == "text") {

$reply = M('mp_reply_text')->find($reply_id);

$reply_text = $reply['content'];

return ResponsePassive::text($request['fromusername'],$request['tousername'],$reply_text);

}else if($type == "image"){

$reply = M('mp_reply_image')->find($reply_id);

$media_id=$reply['media_id'];

return ResponsePassive::image($request['fromusername'],$request['tousername'],$media_id);

}else if($type == "news"){

$reply = M('mp_reply_news')->find($reply_id);

$item[] = ResponsePassive::newsItem($reply['title'],$reply['descrpition'],$reply['picurl'],$reply['url']);

return ResponsePassive::news($request['fromusername'],$request['tousername'],$item);

}

}else{

return 'success';

}

}

其次我们开始写后台PHP代码public function replytext(){

if(IS_GET){

$this->display();

}else{

$content=I('post.content');

$keyword=I('post.keyword');

$data['content']=$content;

$reply_id=M('mp_reply_text')->add($data);

if(isset($reply_id)){

$mp=getCurrentMp();

$data['mp_id']=$mp['id'];

$data['keyword']=$keyword;

$data['type']='text';

$data['reply_id']=$reply_id;

// print_r($data);

// exit;

M('mp_reply_rule')->add($data);

$this->ajaxReturn(array('msg'=>'上传成功'));

}else{

$this->ajaxReturn(array('msg'=>'上传失败'));

}

}

}

根据前台页面输入关键字以及回复内容就可以实现自动回复文本内容

2.根据关键词自动回复图片

根据LaneWeChat/core/aes/wechatrequest.lib.php中text()中的方法可以自动判断要回复的是那种类型 只需在php后台中获取其type,自动回复图片我们在PHP中写入如下代码:public function replyimage(){

if(IS_GET){

$this->display();

}else{

$url=I('post.url');//图片在本地服务器上的路径

$file=realpath('.' .$url);// 相对路径换位结对路径

$accessToken=getAccess_token();

include APP_PATH .'LaneWeChat/lanewechat.php';

$url="https://api.weixin.qq.com/cgi-bin/material/add_material?accessaccessToken&type=image";

$data['media']='@' .$file;

$ret=Curl::callWebServer($url,$data,'post',true,false);

if(isset($ret['media_id'])){

$mp=getCurrentMp();

$data['url']=$url;

$data['media_id']=$ret['media_id'];

$reply_id=M('mp_reply_image')->add($data);

$keyword=I('post.keyword');

if(isset($reply_id)){

$mp=getCurrentMp();

$data['mp_id']=$mp['id'];

$data['keyword']=$keyword;

$data['type']='image';

$data['reply_id']=$reply_id;

M('mp_reply_rule')->add($data);

$this->ajaxReturn(array('msg'=>'上传成功'));

}else{

$this->ajaxReturn(array('msg'=>'上传失败'));

}

}else{

$this->ajaxReturn(array('msg'=>'上传失败'));

}

}

}

但要注意我们在回复图片时应提前在数据表中存入一张要回复的图片,所以我们还需在PHP中写入upload()方法。

3.根据关键词回复图文消息

相当于将回复文本和图片的道理相同,只需稍作修改即可,获取有效的字段。

相关推荐:

php微信关键词回复,PHP微信开发之自动回复相关推荐

  1. 微信公众号二次开发实现自动回复文字,图片,图文功能

    微信公众号二次开发实现自动回复文字,图片,图文功能 自动回复文字或图片: 表单里需要有关键字和内容.但就这两个字段也需要在两个数据表里分别显示,因为要提前准备字段内容里有可能是图片,图文等等类型.所以 ...

  2. 微信公众号后台java开发实现自动回复机器人

    1.注册微信公众号.(简单) 2.注册图灵机器人.(自己百度) 1)注册后可以拿到key  (注意  api接入里的钥匙不要打开,否则要加解密,麻烦) 3.配置微信公众号服务器验证. 1)在开发的基本 ...

  3. 微信信息回复 java,微信公众平台开发中使用Java如何实现一个消息回复功能

    微信公众平台开发中使用Java如何实现一个消息回复功能 发布时间:2020-11-17 16:11:11 来源:亿速云 阅读:82 作者:Leah 本篇文章给大家分享的是有关微信公众平台开发中使用Ja ...

  4. php 关键词回复 图片,php微信开发之关键词回复功能

    本文实例为大家分享了php微信开发之关键词回复的具体代码,供大家参考,具体内容如下 valid(); $wechatObj->responseMsg(); class wechatCallbac ...

  5. 使用Java语言开发微信公众平台(三)——被关注回复与关键词回复

    在上一篇文章中,我们实现了文本消息的接收与响应.可以在用户发送任何内容的时候,回复一段固定的文字.本章节中,我们将对上一章节的代码进行适当的完善,同时实现[被关注回复与关键词回复]功能. 一.微信可提 ...

  6. 微信公众号开发之关键词回复

    微信公众号开发详细教程 公众号的关键词回复是一个最基本的功能,大部分的关键词回复可以在授权的第三方平台(微微校.腾讯微校等)去进行管理,配置开发服务器之后,微信平台的自动回复和自定义菜单会失效,而在开 ...

  7. 微信公众号后台服务开发(一):自动消息回复

    微信公众号后台服务开发 简述 微信平台提供的自动回复机制 后台服务开发 配置指定服务器 消息自动回复功能开发 简述 使用Java SpringBoot框架搭建微信工作号后台实现自定义逻辑自动回复 先注 ...

  8. 微信公众平台开发之MySql数据库+关键词回复-php语言(三)

    2019-3-28 15:09:02更新: 感谢各位的支持.最早发帖是在大四毕业论文期间,所以针对第一次接触微信公众号的学生.时过境迁,4年过去了,在微信上遇到了方方面面的问题,这里贡献些自己的学习资 ...

  9. 微信直接回复图片+php,php微信开发之图片回复功能

    本文实例为大家分享了php微信图片回复功能的具体代码,供大家参考,具体内容如下 /** *wechatphptest */ //defineyourtoken define("TOKEN&q ...

最新文章

  1. 基于 OpenCV 的图像分割项目实战
  2. python爬虫如何从一个页面进入另一个页面-Python爬虫如何获取页面内所有URL链接?本文详解...
  3. 2.5亿存款丢失案储户6问质疑工行 句句戳痛点
  4. OpenCASCADE绘制测试线束:图形命令之VIS 查看器命令
  5. mysql 调用未定义函数_php – Wierd和Annoying错误:调用未定义的函数mysql_query()[复制]...
  6. Lucene查询(搜索)语法示例
  7. 为什么选用NACOS
  8. Could not create a validated object, cause: ValidateObject failed
  9. uniapp某个页面高度占满写法
  10. 获取各城市poi数据
  11. Unity 3D 网络游戏架构设计
  12. Unity3d C# 代码动态设置(SetTexture)材质球(Material)贴图纹理(Texture)
  13. python ssologin_Python sso
  14. 台式计算机一小时功率,电脑电源功率如何选?电脑1小时能耗多少电?
  15. meso-四(4-吡啶)卟啉TPyrP/四(1-吡啶-羟乙基)卟啉T(4-HEPy)P;紫红色晶体状ZnTPP-Py/5-(4-炔丙氧基苯基)-10,15,20-三苯基锌卟啉
  16. Windows系统下cmd中直接返回根目录
  17. 产品经理的核心竞争力是什么?为什么?
  18. 安装系统正在为首次使用计算机ghost,win7系统安装程序显示正在为首次使用计算机做准备的解决方法...
  19. c语言横纵坐标乘法,C语言 · 猜算式 · 乘法竖式
  20. zipkin下载地址新

热门文章

  1. 流氓话题-从QQ与360之的流氓之战来看看我们的软件业-再来看看程序员的心智
  2. visio2013画图像金字塔示意图
  3. 笔记本电脑自动开关机
  4. 安卓手机安装Java版MC,实现与电脑联机
  5. CorelDRAW名片设计
  6. Could not load file or assembly……
  7. 非常实用的移动web开发资源整理
  8. 【Tensorflow生成minist手写图像以及解决遇到的问题】
  9. 20个常见的Java错误以及规避方法
  10. Linux+Ubuntu安装JDK