热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【玩转微信公众平台之十】图文消息回复解说

我们回复用户的消息类型有多种。能够是简单的文字回复。也能够是音乐回复,或者是图文信息回复(不能仅仅回复一张图片。一定要夹带着文字)。为什么本篇我就仅仅将图文回复呢?原因有多个:1、音乐回
我们回复用户的消息类型有多种。能够是简单的文字回复。也能够是音乐回复,或者是图文信息回复(不能仅仅回复一张图片。一定要夹带着文字)。

为什么本篇我就仅仅将图文回复呢?原因有多个:
1、音乐回复我没搞过。
2、文字回复前一篇说过。
3、图文回复个人认为偏难了点,所以重点讲;
4、博主又要凑博客篇数了...(没错。答对了)


--------------------------
1、在開始解说图文消息回复之前,我要补讲一些东西:在演示样例代码解说的那篇博客里,我以下这段代码跳过去了:

$textTpl = "
			
			
			%s
			
			
			0
			";

$textTpl这货怎么看起来如此眼熟?没错,我们在回复用户的文字消息( 注意是文字消息)时,都会用到它,如以下这句:
$msgType = "text";
$cOntentStr= "感谢您的关注,回复“1”查看博主ID;回复“2”查看博主爱好";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
echo $resultStr;

它的作用就是将我们要发给用户的文字消息合成为xml格式文本。这个文本里包括用户的OpenID,公众号的ID,系统时间,消息类型,回复的文字内容。那么,什么是xml格式呢?

XML是一种简单的数据存储语言,它要求每个标签都有開始和结束标记。能够进行嵌套,它里面的每个字段(就是每种信息)都必须以<>开头。结尾,例如以下:


博主ID
博主年龄

xml简单分析到这里, 以下回过头来继续看$textTpl这个变量
$textTpl = "//这里表明是xml格式
			//存储微信公众号的ID
			//存储用户OpenID
			%s//存储系统时间
			//存储消息类型
			//存储要发送到消息内容
			0//是否星标(别管这个)
			";

恩。上面的代码凝视还算比較好理解吧, 可能唯一不理解的就是[CDATA[%S]]这货是什么玩意。CDATA表示不转义,不理解也没事,主要还是看%s。它表示要转换成字符串的数据类型

翻译成白话文就是%s表示一个刚出生的婴儿。这个婴儿的类型的字符串类型(能够理解为女的),我们都知道婴儿刚出生时所有信息都是一片空白。没有姓名,没有户口之类的,这就是%s的含义,表示一片空白。等待你来开发,如以下这句:

此时Content里是没有内容的,所以就须要我们来传送内容进入。怎么传呢?用sprintf()这个函数,它的格式例如以下:
sprintf(baby,$name,$country,...);
第一个參数baby表示将要被传送内容的xml格式变量(婴儿),将$name传给baby中第一个出现%s的位置。将$country传给第2个出现%s的位置。以此类推



最后我们再回过头来看下这句:

$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
echo $resultStr;
是不是知道怎么回事了? $textTpl就是xml格式变量,接下来将$fromUsername传给textTpl。然后是tuUsername,然后...,最后将全新的textTpl传给resultStr这个变量。然后发送给用户。

2、以下进入正题。怎样回复图文消息。

以下是回复图文消息的一些格式:
执行效果例如以下:

好了,就这样。

本来是安排一周的时间将微信这个系列教程写完的,结果由于各种原因仅仅完毕了十篇。所以呢,就先写到这吧。等下次有抽空再继续吧...

后会有期~~

尊重原创。转载请注明来源:http://blog.csdn.net/star530/article/details/26139129

推荐阅读
  • 微信公众平台上的人脸识别
    微信公众平台上的人脸识别微信公众平台消息接口开发(20)人脸识别微信公众平台图片人脸识别作者:http:www.cnblogs.comtxw1958 ... [详细]
  • 探讨如何在 iOS 开发中通过添加 NSLayoutConstraint 来使 UICollectionView 自适应其内容的高度,特别是在复杂布局如模拟微信朋友圈发布界面时遇到的问题。 ... [详细]
  • 如何使用Ping命令来测试网络连接?当网卡安装和有关参数配置完成后,可以使用ping命令来测试一下网络是否连接成功。以winXP为例1、打开XP下DOS窗口具体操作是点击“开始”菜 ... [详细]
  • 深入解析SpringMVC核心组件:DispatcherServlet的工作原理
    本文详细探讨了SpringMVC的核心组件——DispatcherServlet的运作机制,旨在帮助有一定Java和Spring基础的开发人员理解HTTP请求是如何被映射到Controller并执行的。文章将解答以下问题:1. HTTP请求如何映射到Controller;2. Controller是如何被执行的。 ... [详细]
  • HTML基础入门指南
    本文将深入浅出地介绍HTML的基础知识,包括其定义、开发工具、制定机构、特性、基本标签及更多实用内容。 ... [详细]
  • 使用JS、HTML5和C3创建自定义弹出窗口
    本文介绍如何结合JavaScript、HTML5和C3.js来实现一个功能丰富的自定义弹出窗口。通过具体的代码示例,详细讲解了实现过程中的关键步骤和技术要点。 ... [详细]
  • 程序员如何优雅应对35岁职业转型?这里有深度解析
    本文探讨了程序员在职业生涯中如何通过不断学习和技能提升,优雅地应对35岁左右的职业转型挑战。我们将深入分析当前热门技术趋势,并提供实用的学习路径。 ... [详细]
  • 本文详细介绍如何使用 Python 集成微信支付的三种主要方式:Native 支付、APP 支付和 JSAPI 支付。每种方式适用于不同的应用场景,如 PC 网站、移动端应用和公众号内支付等。 ... [详细]
  • 本文探讨了如何通过一系列技术手段提升Spring Boot项目的并发处理能力,解决生产环境中因慢请求导致的系统性能下降问题。 ... [详细]
  • 我网站的图片做了防盗链,公众号里图文消息的封面需引用网站的图片,但是添加白名单需要域名,但是微信公众号的域名是什么呢。我这么说会不会误导 ... [详细]
  • 手把手教你搭建一个属于自己的网站-适合零基础小白,文末附网站模板
    本文主要介绍关于服务器,百度,http的知识点,对【手把手教你搭建一个属于自己的网站-适合零基础小白,文末附网站模板】和【微信公众平台】有兴趣的朋友可以看下由【普通网友】投稿的技术文章,希望该技术和经 ... [详细]
  • 微信公众平台开发获取关注者列表
    微信小程序|微信开发微信公众平台微信小程序-微信开发本文介绍在微信公众平台上如何使用高级接口开发获取关注者列表的功能。防丢器源码,vscode快速生成,vm虚拟机能装ubuntu, ... [详细]
  • 微信公众平台整合开发实战教程 微信开发教程
    《ASP.NETMVC5&微信公众平台整合开发实战(响应式布局、JQueryMobile,WindowsAzure、微信核心开发)》课程讲师:57Code课程分类:ASP.NETMV ... [详细]
  • 微信公众平台高级功能使用说明文档一、高级功能介绍1.1基本内容介绍高级功能包括“编辑模式”和“开发模式”,两种模式皆可使你所运营的公众帐号个性化,例如具有“自定义菜单”等功能。1.2 ... [详细]
  • 建立服务器与微信公众平台的链接,首先要有一个默认首页提供程序的链接支持,该方法主要是获取微信提供过来的4个参数,供比较是否可链接使用。 其次,要有一个服务器地址与一个token(为英文或 ... [详细]
author-avatar
keyu5182702936453
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有