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 相关文章推荐
PHP脚本数据库功能详解(中)
Oct 09 PHP
防止用户利用PHP代码DOS造成用光网络带宽
Mar 01 PHP
PHP 5.3新增魔术方法__invoke概述
Jul 23 PHP
解决phpcms更换javascript的幻灯片代码调用图片问题
Dec 26 PHP
浅谈json_encode用法
Mar 05 PHP
PHP实现获取文件后缀名的几种常用方法
Aug 08 PHP
PHP实现微信模拟登陆并给用户发送消息的方法【文字,图片,图文】
Jun 29 PHP
PHP memcache在微信公众平台的应用方法示例
Sep 13 PHP
PHP实现的最大正向匹配算法示例
Dec 19 PHP
PHP中命名空间的使用例子
Mar 22 PHP
windows 2008r2+php5.6.28环境搭建详细过程
Jun 18 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
Oct 16 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
PHP基于自增数据如何生成不重复的随机数示例
2017/05/19 PHP
php菜单/评论数据递归分级算法的实现方法
2019/08/01 PHP
php中错误处理操作实例分析
2019/08/23 PHP
Laravel关系模型指定条件查询方法
2019/10/10 PHP
jQuery 剧场版 你必须知道的javascript
2009/05/27 Javascript
JS批量操作CSS属性详细解析
2013/12/16 Javascript
Jquery获取和修改img的src值的方法
2014/02/17 Javascript
jQuery使用load()方法载入另外一个网页文件内的指定标签内容到div标签的方法
2015/03/25 Javascript
javascript带回调函数的异步脚本载入方法实例分析
2015/07/02 Javascript
实例代码详解jquery.slides.js
2015/11/16 Javascript
javascript的几种继承方法介绍
2016/03/22 Javascript
浅谈JavaScript变量的自动转换和语句
2016/06/12 Javascript
浅析JavaScript函数的调用模式
2016/08/10 Javascript
将json转换成struts参数的方法
2016/11/08 Javascript
JS动态修改网页body的背景色实例代码
2017/10/07 Javascript
Dropify.js图片宽高自适应的方法
2017/11/27 Javascript
JS实现扫码枪扫描二维码功能
2020/01/03 Javascript
js实现星星打分效果
2020/07/05 Javascript
详解vue 组件的实现原理
2020/11/12 Javascript
[53:50]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
在Python中调用ggplot的三种方法
2015/04/08 Python
python打开url并按指定块读取网页内容的方法
2015/04/29 Python
python对象及面向对象技术详解
2016/07/19 Python
Python配置mysql的教程(推荐)
2017/10/13 Python
python寻找list中最大值、最小值并返回其所在位置的方法
2018/06/27 Python
解决Pycharm运行时找不到文件的问题
2018/10/29 Python
美国家居装饰店:Z Gallerie
2020/12/28 全球购物
医学院四年学习生活的自我评价
2013/11/06 职场文书
会计与审计毕业生自荐信范文
2013/12/30 职场文书
商场主管竞聘书
2014/03/31 职场文书
党支部换届选举方案
2014/05/08 职场文书
学校师德师风整改方案
2014/10/28 职场文书
诚信承诺书
2015/01/19 职场文书
2019个人半年工作总结
2019/06/21 职场文书
广告文案的撰写技巧(实用干货)
2019/08/23 职场文书
七年级之家长会发言稿范文
2019/09/04 职场文书