PHP微信開發教程之搜尋已發送圖文及匹配關鍵字回複的方法

來源:互聯網
上載者:User
這篇文章主要介紹了PHP使用開發模式實現搜尋已發送圖文及匹配關鍵字回複的方法,涉及php針對json格式資料的解析與正則匹配相關操作技巧,需要的朋友可以參考下

本文執行個體講述了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/>-------------------------------------';    }  }}?>

資料庫:

使用者回複關鍵字,然後查詢回複相應圖文資訊。

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;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.