PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法


Posted in PHP onSeptember 13, 2017

本文实例讲述了PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法。分享给大家供大家参考,具体如下:

用户发送关键字,搜索相应的图文进行回复。

模拟登陆就不说了

右键看“已发送”图片页的源代码,图文部分是json格式的。

{"msg_item":[{"id":80630,"type":9,"fakeid":"2397007301","nick_name":"每天学点心理学","date_time":1403445168,"content":"","source":"mass","msg_status":2,"title":"(第167期)| 我读过的具有正能量的一篇文章,为你取暖","desc":"传说世间的一切生灵皆可修炼成仙,而猫自然在其中。每修炼二十年,猫就会多长出一条尾巴,等到有...","content_url":"http:\/\/mp.weixin.qq.com\/s?__biz=MjM5NzAwNzMwMQ==&mid=201393381&idx=1&sn=5351cb8d440365c24a6abb709e4e0d8c#rd","show_type":1,"file_id":201393328,"app_sub_type":3,"comment_url":"","has_reply":0,"refuse_reason":"","multi_item":[{"seq":0,"cover":"https:\/\/mmbiz.qlogo.cn\/mmbiz\/jOtiajqZ1n62uicM0XBZkqUB5BdJRdCMt0Y3CDIApNglh6Lj5zcmfm0mqN0YyGkNvekxP7j0uqs95AQejwZpTfCg\/0","title":"(第167期)| 我读过的具有正能量的一篇文章,为你取暖","digest":"传说世间的一切生灵皆可修炼成仙,而猫自然在其中。每修炼二十年,猫就会多长出一条尾巴,等到有...","content_url":"http:\/\/mp.weixin.qq.com\/s?__biz=MjM5NzAwNzMwMQ==&mid=201393381&idx=1&sn=5351cb8d440365c24a6abb709e4e0d8c#rd","file_id":201393328,"content":"","source_url":"","author":"","show_cover_pic":0,"vote_id":[]}],"to_uin":0,"send_stat":{"total":1656,"succ":1656,"fail":0}},{"id":80444,"type":2,"fakeid":"2397007301","nick_name":"每天学点心理学","date_time":1403358199,"source":"mass","msg_status":2,"comment_url":"","has_reply":0,"refuse_reason":"","multi_item":[],"to_uin":0,"send_stat":{"total":1631,"succ":1631,"fail":0}},{"id":80222,"type":9,"fakeid":"2397007301","nick_name":"每天学点心理学","date_time":1403272191,"content":"","source":"mass","msg_status":2,"title":"(第166期)| 想要的超能力,来玩一个投票娱乐下吧~","desc":"虽然没啥了不起的,但还是想要的这种超能力…-----------END-----------可以点击右上角『","content_url":"http:\/\/mp.weixin.qq.com\/s?__biz=MjM5NzAwNzMwMQ==&mid=201376620&idx=1&sn=a9ccae0826f5aa74476dc5936cec51f2#rd","show_type":1,"file_id":201370866,"app_sub_type":3,"comment_url":"","has_reply":0,"refuse_reason":"","multi_item":[{"seq":0,"cover":"https:\/\/mmbiz.qlogo.cn\/mmbiz\/jOtiajqZ1n62MibMmurxXEVsDbwZglIq1wSxian2K6cH8Du0l3fMgQ2GdmbovicAXpSmjslI9iaCXicCTJC5Mef8ggBA\/0","title":"(第166期)| 想要的超能力,来玩一个投票娱乐下吧~","digest":"虽然没啥了不起的,但还是想要的这种超能力…-----------END-----------可以点击右上角『","content_url":"http:\/\/mp.weixin.qq.com\/s?__biz=MjM5NzAwNzMwMQ==&mid=201376620&idx=1&sn=a9ccae0826f5aa74476dc5936cec51f2#rd","file_id":201370866,"content":"","source_url":"","author":"","show_cover_pic":0,"vote_id":[45050]},{"seq":1,"cover":"https:\/\/mmbiz.qlogo.cn\/mmbiz\/jOtiajqZ1n62MibMmurxXEVsDbwZglIq1w4hNsMaia4p6SXGIUU6NBwbyEbpFL2mESOJ0yuP5pJhzavHzgnyPMM1A\/0","title":"【美文】| 挥之不去的无奈","digest":"躺在床上,过往的一幕幕在脑海掠过。四年的坚持,抑或说是7年的梦想,当它破灭时,仅仅淡然一笑,谈何容易?其实行","content_url":"http:\/\/mp.weixin.qq.com\/s?__biz=MjM5NzAwNzMwMQ==&mid=201376620&idx=2&sn=21a7f8715f4b2ecc2f484fd3b04ca554#rd","file_id":201371031,"content":"","source_url":"","author":"","show_cover_pic":1,"vote_id":[]},{"seq":2,"cover":"https:\/\/mmbiz.qlogo.cn\/mmbiz\/jOtiajqZ1n62MibMmurxXEVsDbwZglIq1wNzqasiaEPYAGXQQdLnkaiaW56ueicHelZFJCjWUA3dg6ibWw15N1KQtEeQ\/0","title":"【插画】| 不是所有的伤口都能自我愈合","digest":"愿每一个相信爱的女生,都能成为爱里打不倒的战士。没有人比你更美好,因为这个世界上不会再有第二个你了。少一点依","content_url":"http:\/\/mp.weixin.qq.com\/s?__biz=MjM5NzAwNzMwMQ==&mid=201376620&idx=3&sn=ca0a2122e1c5d8f848fd6412ea347664#rd","file_id":201374122,"content":"","source_url":"","author":"","show_cover_pic":0,"vote_id":[]}],"to_uin":0,"send_stat":{"total":1610,"succ":1610,"fail":0}},{"id":79872,"type":1,"fakeid":"2397007301","nick_name":"每天学点心理学","date_time":1403185708,"content":"朋友们,今天休息,不发咯,你们也早点休息哟〜\/:<L>","source":"mass","msg_status":2,"comment_url":"","has_reply":0,"refuse_reason":"","multi_item":[],"to_uin":0,"send_stat":{"total":1584,"succ":1584,"fail":0}},{"id":79544,"type":9,"fakeid":"2397007301","nick_name":"每天学点心理学","date_time":1403098674,"content":"","source":"mass","msg_status":2,"title":"(第165期)| 孩子为什么会偷东西","desc":"小孩偷东西是一种很严重的行为,但好像是很多孩子在成长过程中都有偷东西一个阶段,父母该如何教育呢?孩子为什么会","content_url":"http:\/\/mp.weixin.qq.com\/s?__biz=MjM5NzAwNzMwMQ==&mid=201345041&idx=1&sn=b2ef53dcfd93db2737240f932a0297d5#rd","show_type":1,"file_id":201240144,"app_sub_type":3,"comment_url":"","has_reply":0,"refuse_reason":"","multi_item":[{"seq":0,"cover":"https:\/\/mmbiz.qlogo.cn\/mmbiz\/jOtiajqZ1n60ZFQ7comgKCEXlkibVZXmJf1PqAs4czgl0AiakwonBibD5DT2ytE6tA8VJdBVibuS92XgWXbuMibKmicRg\/0","title":"(第165期)| 孩子为什么会偷东西","digest":"小孩偷东西是一种很严重的行为,但好像是很多孩子在成长过程中都有偷东西一个阶段,父母该如何教育呢?孩子为什么会","content_url":"http:\/\/mp.weixin.qq.com\/s?__biz=MjM5NzAwNzMwMQ==&mid=201345041&idx=1&sn=b2ef53dcfd93db2737240f932a0297d5#rd","file_id":201240144,"content":"","source_url":"","author":"虫子","show_cover_pic":1,"vote_id":[]},{"seq":1,"cover":"https:\/\/mmbiz.qlogo.cn\/mmbiz\/jOtiajqZ1n60ZFQ7comgKCEXlkibVZXmJfRPJl3P72Vh8l46B1m6EvZY4IWRnFB0AHkxrTSbghME9TxmFyibbxXdQ\/0","title":"八张图让你明白很多","digest":"小图片,大道理。-----------END-----------可以点击右上角『分享至朋友圈』。微信号:m","content_url":"http:\/\/mp.weixin.qq.com\/s?__biz=MjM5NzAwNzMwMQ==&mid=201345041&idx=2&sn=63ae37b620566f2dc80d4b229b98a5f4#rd","file_id":201240187,"content":"","source_url":"","author":"虫子","show_cover_pic":0,"vote_id":[]}],"to_uin":0,"send_stat":{"total":1568,"succ":1568,"fail":0}}]}

直接解析json即可。
<?php
$wechatObj = new wechatappmsg();
$wechatObj->getappmsg('这里是json');
class wechatappmsg{
  function getappmsg($content){
    //require_once 'db.php';
    $jsonstr=$content;
    //   $jsonstr='{"msg_item":[{"id":79544,"type":9},{}]}';
    $jsonstr = iconv('gbk', 'utf-8', $jsonstr);
    $result = json_decode($jsonstr);
    $name=$result->msg_item;
    // var_dump($name);
    //   echo '<br/>json:'.$result;
    $size=count($name);
    echo '<br/>size:'.$size;
    //  exit;
    for($i=0;$i<$size;$i++){
      $multi_item=$name[$i]->multi_item;
      $size2=count($multi_item);
      $app_id=$name[$i]->app_id;
      $create_time=$name[$i]->date_time;//发送时间
      //  echo '<br/>app_id:'.$app_id;
      $create_time=date ("Y-m-d H:i:s", $create_time);//时间转换
      echo '<br/>create_time:'.$create_time;
      for($j=0;$j<$size2;$j++){
        $title=$multi_item[$j]->title;//标题
        $pic_url=$multi_item[$j]->cover;//图片地址
        $digest=$multi_item[$j]->digest;//简要
        $content_url=$multi_item[$j]->content_url;//图文地址
        $t = iconv('utf-8', 'gbk', $title);
        echo '<br/>title:'.$t;
        echo '<br/>Link:'.$content_url;
        preg_match("/mid=([0-9]+)&/",$content_url,$string);
        $app_mid=$string[1];//一次发送的多个图文,这个ID值可以判断这两个图文是同一次发送的
        echo '<br/>app_mid:'.$app_mid;
        //这里可以直接进行入库
//$x=saveappmsg($pic_url,$title,$digest,$content_url,$create_time,$app_mid);
 sleep(3);
      }
      echo '<br/>-------------------------------------';
    }
  }
}
?>

数据库:

PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法

用户回复关键字,然后查询回复相应图文信息。

1》根据期数进行查询:

select app_id from table where title like '%162期%' limit 1;
select * from table where app_id=XXXXX;

2》根据关键字:

select * from table where title like '%故事%' limit 10;

PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
Apache2中实现多网站域名绑定的实现方法
Jun 01 PHP
php报表之jpgraph柱状图实例代码
Aug 22 PHP
Apache下禁止php文件被直接访问的解决方案
Apr 25 PHP
解析用PHP读写音频文件信息的详解(支持WMA和MP3)
May 10 PHP
Linux环境下搭建php开发环境的操作步骤
Jun 17 PHP
PHP基于phpqrcode生成带LOGO图像的二维码实例
Jul 10 PHP
详解php用curl调用接口方法,get和post两种方式
Jan 13 PHP
PHP设计模式之工厂模式实例总结
Sep 01 PHP
thinkphp 抓取网站的内容并且保存到本地的实例详解
Aug 25 PHP
PHP常见过waf webshell以及最简单的检测方法
May 21 PHP
php和redis实现秒杀活动的流程
Jul 17 PHP
laravel Task Scheduling(任务调度)在windows下的使用详解
Oct 22 PHP
PHP memcache在微信公众平台的应用方法示例
Sep 13 #PHP
深入解析Laravel5.5中的包自动发现Package Auto Discovery
Sep 13 #PHP
PHP 实现公历日期与农历日期的互转换
Sep 13 #PHP
php生成条形码的图片的实例详解
Sep 13 #PHP
php之可变函数的实例详解
Sep 13 #PHP
PHP实现一个多功能购物网站的案例
Sep 13 #PHP
php之可变变量的实例详解
Sep 12 #PHP
You might like
咖啡知识 咖啡养豆要养多久 排气又是什么
2021/03/06 新手入门
PHP 读取文本文件内容并分页显示
2016/01/02 PHP
PHP编写简单的App接口
2016/08/28 PHP
实例讲解PHP表单处理
2019/02/15 PHP
PHP常见的几种攻击方式实例小结
2019/04/29 PHP
jQuery live( type, fn ) 委派事件实现
2009/10/11 Javascript
JavaScript获取FCK编辑器信息的具体方法
2013/07/12 Javascript
node.js中的fs.readlinkSync方法使用说明
2014/12/17 Javascript
jQuery基于扩展实现的倒计时效果
2016/05/14 Javascript
jquery事件绑定解绑机制源码解析
2016/09/19 Javascript
JS三目运算(三元运算)方法详解
2017/03/01 Javascript
js实现带三角符的手风琴效果
2017/03/01 Javascript
javascript  删除select中的所有option的实例
2017/09/17 Javascript
Vue Cli3 创建项目的方法步骤
2018/10/15 Javascript
vue 配置多页面应用的示例代码
2018/10/22 Javascript
Express结合Webpack的全栈自动刷新
2019/05/23 Javascript
JavaScript前后端JSON使用方法教程
2020/11/23 Javascript
JavaScript async/await原理及实例解析
2020/12/02 Javascript
Node.js中的异步生成器与异步迭代详解
2021/01/31 Javascript
python通过urllib2获取带有中文参数url内容的方法
2015/03/13 Python
Python语言实现机器学习的K-近邻算法
2015/06/11 Python
Python爬虫利用cookie实现模拟登陆实例详解
2017/01/12 Python
pandas数据框,统计某列数据对应的个数方法
2018/04/11 Python
PyQt5每天必学之事件与信号
2018/04/20 Python
python @classmethod 的使用场合详解
2019/08/23 Python
关于numpy数组轴的使用详解
2019/12/05 Python
Python+OpenCV实现将图像转换为二进制格式
2020/01/09 Python
一款CSS3实现多功能下拉菜单(带分享按)的教程
2014/11/05 HTML / CSS
Conforama西班牙:您的家具、装饰和电器商店
2020/02/21 全球购物
如何提高SQL Server的安全性
2016/07/25 面试题
装修协议书范本
2014/04/21 职场文书
小学感恩教育活动总结
2014/07/07 职场文书
2014年重阳节老干部座谈会局领导发言稿
2014/09/25 职场文书
2014年小学英语教师工作总
2014/12/03 职场文书
企业计划生育责任书
2015/05/09 职场文书
教你怎么用Python监控愉客行车程
2021/04/29 Python