微信开发之自动回复图文消息

demo下载地址:http://www.cnblogs.com/txw1958/p/tutorials-of-wechat-public-platform.html 方倍工作室 的。

(3)根据消息类型,拼接不同的xml数据,返回给模板

4、

5、

这个方法主要是为了判断请求的类型,根据不同的类型会有不同的处理方法。在此只处理text类型的数据,并且调用text方法,获取拼接的数据。最后返回给响应方法handle_response()方法。

6、

在这里,我们把回复的内容都给写死了,大家到时候也完全可以从数据库读出这些数据。里面就是简单的拼接了一些图文信息,然后把这些信息返回。数组$arr是方便在模板上输出图文消息。

7、

该控制器主要是根据传过来的event不同,判断该调用哪个模板,该回复什么样的消息等。如果$event==text,则调用默认的模板:$xml = view(wechat.tpl_reply_text) ;如果$event为news,则需要返回图文消息,我们把数据都放到数组里面,在模板上输出即可。

8、

<xml>
  <ToUserName><![CDATA[{
        
 {
        
 $ToUserName}}]]></ToUserName>
  <FromUserName><![CDATA[{
        
 {
        
 $FromUserName}}]]></FromUserName>
  <CreateTime>{
        
 {
        
 $CreateTime}}</CreateTime>
  <MsgType><![CDATA[news]]></MsgType>
  <ArticleCount>{
        
 {
        
 $ArticleCount}}</ArticleCount>
  <Articles>
@foreach ($news  as $k => $v)
  <item>
  <Title><![CDATA[{
        
 {
        
 $v[Title]}}]]></Title>
  <Description><![CDATA[{
        
 {
        
 $v[Description]}}]]></Description>
  <PicUrl><![CDATA[{
        
 {
        
 $v[PicUrl]}}]]></PicUrl>
  <Url><![CDATA[{
        
 {
        
 $v[Url]}}]]></Url>
  </item>
@endforeach
  </Articles>
</xml>

这就是模板部分:直接输出即可。

10、总结:虽然整体来说不够简洁,但也算是实现了功能,在此做个记录。以后水平高了再完善完善。

经验分享 程序员 微信小程序 职场和发展