ImageVerifierCode 换一换
格式:PPT , 页数:71 ,大小:2.65MB ,
文档编号:4182668      下载积分:28 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-4182668.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(晟晟文业)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(微信公众平台创业应用基础(第2章)课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

微信公众平台创业应用基础(第2章)课件.ppt

1、第2章 订阅号开发能力CAPACITY要求掌握订阅号群发功能。了解订阅号自动回复。熟悉自定义菜单。掌握开发模式环境搭建及php语言。订阅号自动回复订阅号群发功能自定义菜单开发模式环境搭建官方示例解释php消息自动回复一、订阅号群发功能 2.1.1群发免责 一、订阅号群发功能 2.1.2群发功能为保障用户体验,微信公众平台严禁恶意营销以及诱导分享朋友圈,严禁发布色情低俗、暴力血腥、政治谣言等各类违反法律法规及相关政策规定的信息。一旦发现,我们将严厉打击和处理。一、订阅号群发功能 2.1.3公众平台群发规则1、公众平台群发人数的上限?、公众平台群发人数的上限?l微信公众平台群发消息的人数没有限制,

2、只能群发给粉丝,不支持群发给非订阅用户。l2、公众平台群发都支持哪些内容?、公众平台群发都支持哪些内容?l目前支持群发的内容:文字、语音、图片、视频、图文消息。3、公众平台群发消息的规则及限制。、公众平台群发消息的规则及限制。l1)订阅号(认证用户、非认证用户),1天只能群发1条消息(每天0点更新,次数不会累加)。l2)服务号(认证用户、非认证用户),1个月(按自然月)内可发送4条群发消息(每月月底0点更新,次数不会累加)。l3)上传至素材管理中的图片、语音可多次群发,没有有效期。l4)群发图文消息的标题上限为64个字节。l5)群发内容为文字的字数上限为600个字符或600个汉字。l6)语音限

3、制:最大5M,最长60min,支持 mp3、wma、wav、amr格式。l7)视频限制:最大20M,支持rm、rmvb、wmv、avi、mpg、mpeg、mp4格式(上传视频后为了便于粉丝通过手机查看,系统会自动进行压缩)。温馨提示:公众平台群发消息目前只支持中文和英文,暂时不支持其他语言。4、公众平台群发消息粉丝侧是否有提示音通知?、公众平台群发消息粉丝侧是否有提示音通知?l1)订阅号群发消息,粉丝手机端微信接收是没有提示音的,在微信会话列表会有新消息提示(红点标志)。l2)服务号群发消息,粉丝手机端微信会收到提示音。l3)素材管理的图文预览单独发送粉丝微信号,手机端微信会收到提示音。l4)

4、公众平台消息管理的实时消息,给某一个粉丝回复消息,手机端微信会收到提示音。订阅号自动回复订阅号群发功能自定义菜单开发模式环境搭建官方示例解释php消息自动回复二、自动回复 2.2.1被添加自动回复用户关注微信公众号后发送给用户的内容二、自动回复 2.2.2收到消息回复自动回复开启状态,关键词回复失败,回复内容自动回复关闭,开发模式代码回复二、自动回复 2.2.3关键词回复根据功能做好整体规划,设置几级菜单,使用哪些关键词。菜单切忌过多、中文关键词不要重复。二、自动回复 2.2.3关键词回复回复内容可以有多条,随机选一条也可全部一次全部回复。关键词可以全匹配,也可以半匹配,半匹配其实就是包含,如

5、南华大学,全匹配必须输入南华大学才能匹配成功,半匹配只要是南华大学这四个字中任意1-4个相连在一起的词即可匹配成功如南华、华大学、大等,但南大、南华学等不能匹配成功。有多级菜单时注意半匹配不要重复在多个规则中。可以回复图片、视频、语音等,超过6位数字会自动识别为电话点击可直接拨号,email地址直接调用邮件客户端。优点缺点 上手容易,不需要学习代码知识文字回复有300字限制,关键字回复上限为200条。响应速度快,因为编辑模式不用重新搭建服务器。扩展功能有限,不能调用网络平台上面的地理位置、API等信息。可以添加图片、视频回复,订阅号开发模式未开放此接口没有数据库,如果使用者有自己的网站或者会员

6、数据库,无法对接和处理海量的数据库。一次性响应多条消息多层菜单影响用户体验,层层递进不够直观二、自动回复自动回复的优缺点订阅号自动回复订阅号群发功能自定义菜单开发模式环境搭建官方示例解释php消息自动回复三、自定义菜单 2.3自定义菜单 公众账号可以在会话界面底部设置自定义菜单,但一级菜单最多三个,每个一级菜单最多包含5个二级菜单。而一级菜单最多4个汉字,二级菜单最多7个汉字,多出来的部分会以表示。订阅号自动回复订阅号群发功能自定义菜单开发模式环境搭建官方示例解释php消息自动回复四、开发模式环境搭建 4.1开发模式 l开发模式主要面向具有开发能力的运营者,公众号的功能都需要通过编程实现,实现

7、的功能一般比较复杂,所以这种模式对运营者的要求很高。p 如果想在开发模式下实现所有功能,就必须进行微信的高级认证。p 通过开发模式可以实现微信编辑模式几乎所有的功能,同时提供丰富的接口实现编辑模式不能满足的应用场景,如特殊业务对接、用户身份验证等。优点缺点 可调用网络API,实现天气、股票、快递、笑话、音乐等信息的查询。需要开发者具有一定的开发实践经验,能动手开发。对接数据库。对于企业来说,一般都有自己的数据库,编辑模式是不能进行数据库对接的。通过开发模式,可以实现自己网站、论坛上数据库完美对接。可实现在线移动支付。通过开发模式的二次开发,可以实现基于手机端的移动支付。用户的回复消息可突破30

8、0字限制。四、开发模式环境搭建4.1开发模式的优缺点四、开发模式环境搭建 4.2开启开发模式,成为开发者 l进入开发基本配置页面,勾选成为开发者,必须先申请成为开发者,才能开启开发模式,如下图所示。l服务器地址(填下一步申请的地址)l令牌(token)四、开发模式环境搭建4.2.1接入指南 填写服务器配置(1)服务器地址URL 开发者用来接收微信消息和事件的接口URL,该URL必须正确响应微信发送的Token验证。(2)Token Token是由开发者任意填写的签名,该Token会与服务器接口URL中包含的Token进行比对,从而验证安全性。(3)EncodingAESKey 由开发者手动填写

9、或随机生成的,主要用于消息体加密解密的密钥。四、开发模式环境搭建4.2.1接入指南 填写服务器配置服务器配置填写四、开发模式环境搭建 l4.2.1接入指南 获取服务器资源 服务器类型虚拟空间百度BAE新浪SAE云主机.指自己托管于IDC机房的服务器或者第三方服务商提供的服务器,一般一个人使用一整台服务器。第三方服务商将一台主机分成多个虚拟主机,供多人使用可以申请免费使用,但是有一定条件限制可以申请免费使用,但是有一定条件限制四、开发模式环境搭建 4.3搭建服务器(SAE)4.3.1新浪云SAE应用网址https:/ http:/ 运行环境上部四、开发模式环境搭建4.3.3云应用信息 运行环境下

10、部-版本访问链接即为服务器地址四、开发模式环境搭建4.3.3云应用信息上传代码包示例文件WX_sample.20140819.zip下载地址:http:/ 注意:服务器需要有默认文档,如index.*,default.*文档,上面文件解压后需修改wx_sample.php为index.php或default.php四、开发模式环境搭建4.3.3云应用信息在线编辑有语法检验,直观四、开发模式环境搭建4.4搭建本地开发环境4.4.1启用本地机iis服务l1、开启iis服务、建立虚拟目录2、下载PHP解释执行器3、下载安装phpmanager。开启IIS后,发现里面多了一个PHP Manager图标

11、项了。4、双击PHP Manager,打开以下界面,单击“Register new PHP version”。(1)(2)(4)(3)4、浏览器运行http:/localhost/或127.0.0.1看运行结果四、开发模式环境搭建4.4搭建本地开发环境4.4.2微信开发者工具l1、下载安装微信开发者工具l2、登录扫码确定“公众号网页”“小程序”两种开发模式选择一l3、sources标签页添加本地文件夹编辑修改相应文档、如设置成网站目录则直接通过地址栏输入http:/localhost/或127.0.0.1看运行结果四、开发模式环境搭建订阅号自动回复订阅号群发功能自定义菜单开发模式环境搭建官方示

12、例解释php消息自动回复五、php基础5.1PHP基本语法 l PHP的脚本以结束,文件名后缀为*.php。php程序通常情况下从上向下运行,代码一般以;结尾,编写代码注意切换到英文状态。l 程序注释语句,单行为/,多行可以用/*.*/进行注释。l PHP的预留关键词不区分大小写,如echo、if、while等,但变量区分大小写。变量区分大小写。l PHP输出命令为echo如下面语句输出hello world 五、php基础5.2PHP变量、常量l PHP为松散型语言,变量使用前无需预先定义,可以直接赋值,自动声明,变量以$(美元)符号开头,其后是变量名称,变量名称必须以字母或下划线开头,不能

13、以数字开头,变量名只能包含字母、数字和下划线,区分大小写。变量命名可以在末尾加上数据类型如$contentstr,尽量采用见名识意的原则如拼音或英语如$namestr,减少无意义的命名如$a、$a1,变量赋值使用=,判断两个变量是否相等采用=。l 常量在程序运行中是不变的,常量的命名以字符或下划线开头,常量使用define(常量,常量值)定义。示例:五、php基础5.3数据类型 lPHP常用的数据类型有:lstring(字符串),如ABClinteger(整型),如100;lboolean(布尔型),即逻辑型,如true或false;lnull值即无变量值;ldouble(浮点型)如1.45;

14、larray(数组型),包含有多个数据,如array(john,marry,susha,lisha)。l数据类型的获取使用gettype()。五、php基础5.3数据类型示例?php$astr=abcd;echo gettype($astr);echo;/为HTML换行标识$bint=10;echo gettype($bint);echo;$cbool=true;echo gettype($cbool);echo;$dnull=null;echo gettype($dnull);echo;$edouble=1.68;echo gettype($edouble);echo;$farray=(jo

15、hn,marry,susha,lisha);echo gettype($farray);echo;?运行结果:stringintegerbooleanNULLdoublearray 五、php基础5.4PHP运算符 l数学运算符:+-*/,如$a=$a+1,表示变量a在原有基础上加1.l字符连接符:.,如$a=abc,$b=def,$c=$a.$b则$c的值为abcdefl比较运算符:=表示等于,!=或表示不等于,大于,=大于等于,=小于等于;l逻辑运算符:&表示与,|表示或,!表示非。l特殊表示$x+表示,返回$x值后,$x值加1。五、php基础5.5流程控制语句-选择结构l选择语句:if语

16、句、ifelse语句、ifelseifelse语句、switchcase语句。l语法规则lif(条件)为真时,执行语句。lIf(条件)为真时,执行语句else为假时,执行语句。lif(条件)为真时,执行语句elseif(条件)为真时,执行语句else为假时,执行语句。lswitch(条件语句)case 1:执行语句;break;case 2执行语句;break;default:默认执行语句。五、php基础If结构示例:Switch结构实例:五、php基础5.5流程控制语句 循环结构l循环语句:for循环语句、while循环语句、for each循环语句。l语法规则lFor(初始值;条件;递增值

17、)执行语句。lWhile(条件为真)要执行的代码;。lForeach循环用于遍历数组中的每个值。五、php基础从1加到10,for语句实现:?phpFor($x=1;$x11;$x+)Echo$x.;$y=$x+$y;Echo$y;?While循环语句实现:?php$x=1;While($x11)Echo$x.;$y=$x+$y;$x+;Echo$y;?运行结果均显示为1234567891055五、php基础Foreach遍历数组示例:?php$colors=array(red,green,blue,yellow);Foreach($colors as$value)Echo$value.;?运

18、行结果:RedGreenBlueyellow五、php基础5.6数组 l数组可以在变量名中存储一个或多个值,创建数组用array(),如:l$cars=array(Volvo,BMW,SAAB);l访问数组时,可以用下标的方式,从0开始索引,如访问BMW,为$cars1。l数组元素的个数可以用函数count()来计算,如count($cars)结果为3。l数组可以指定键值,如:$age=array(peter=35,ben=37,joe=43);可以用键值代替索引如$agepeter结果为35。l数组输出不能用echo,要用print_r(expression)或者var_dump(expre

19、ssion),两者稍有区别。?php$cars=array(Volvo,BMW,SAAB);Print_r($cars);Echo;Var_dump($cars);?运行结果:Array(0=Volvo 1=BMW 2=SAAB)Array(3)0=string(5)Volvo 1=string(3)BMW 2=string(4)SAAB PHP中echo、print_r 与var_dump的区别:三者都是具有输出功能的php语句,但print_r(expression),var_dump(expression)是函数,echo只是语言结构,不是函数,因此不能作为表达式的一部分。对于操作php

20、的8种数据类型来说:echo 用于输出数值变量或者是字符串。但使用echo来输出引用变量时,如数组,仅输出数组的名字;当输出一个对象时,服务器提示错误,错误显示echo只能用于输出字符串。print_r的作用是输出一个数组,参数expression类型可为数值变量和引用变量。var_dump的作用是输出一个变量的详细信息,输出结果,参数expression表示各种变量类型。五、php基础5.7常用函数函数含义示例示例结果Sort()数组排序(从低到高。成功:true,失败:false)从高到低用rsort()$numbers=array(3,5,8,10,2);Sort($numbers);P

21、rint_r($numbers);Array(0=2 1=3 2=5 3=8 4=10)Empty()是否为空$a=99;$b=empty($a);Var_dump($b);Bool(false)Time()时间函数,Unix时间,从1970年算起的秒数Echo time()1551958707Exit()退出程序Exit();注意:sort函数会为排序的数组中单元赋予新的键名,这将删除原有的键名而不仅是重新排序。订阅号自动回复订阅号群发功能自定义菜单开发模式环境搭建官方示例解释php消息自动回复六、官方示例代码解析l6.1消息交互流程l代码下载地址:http:/ wechatCallback

22、apiTest public function valid()$echoStr=$_GETechostr;/valid signature,option if($this-checkSignature()header(content-type:text);echo$echoStr;exit;1112131415161718192021222324第11至24行为签名及接口验证,初学者可以忽略。开发者通过检验Signature对请求进行校验。若确认此次get请求来自微信服务器,原样返回echostr参数内容,表示接入生效,否则接入失败。第11、12行定义名为wechatCallbackapiTe

23、st的类,从12行前大括号开始到88行后大括号结束。使用tab键将同一级别的大括号保持纵向对齐。第13行定义了一个名为valid的公有方法,14行开始,22行结束,15行从微信用户端获取一个随机字符赋予变量$echoStr,18到20行访问第63行的checkSignature签名验证方法,如果签名一致输出$echoStr,完成验证配置接口操作、退出程序。六、官方示例代码解析6.2官方代码(共90行)(3)public function responseMsg()/get post data,May be due to the different environments$postStr=$G

24、LOBALSHTTP_RAW_POST_DATA;/extract post dataif(!empty($postStr)/*libxml_disable_entity_loader is to prevent XML eXternal Entity Injection,the best way is to check the validity of xml by yourself*/libxml_disable_entity_loader(true);$postObj=simplexml_load_string($postStr,SimpleXMLElement,LIBXML_NOCDAT

25、A);2526272829303132333435第25至62行定义一个公有的responseMsg方法。它是回复微信的关键,修改代码主要集中在这段代码。第25行定义了一个名为responseMsg()的公有函数,后面回复微信信息时要调用这个方法。第27行为注释,获取微信用户端发送来的信息,不同环境可能有差异。第28行将微信用户端发送来的数据保存在变量$postStr中。微信端发送的为xml格式数据,使用$_POST无法解释,使用$GLOBALSHTTP_RAW_POST_DATA获取。第30行注释解析用户数据。第31行判定用户端数据是否赋值,赋值执行32到58行代码,否则执行59到61行代码

26、。32.33行注释为避免xml注入,最好自行进行校验。第34行xml安全校验,第35行将$postStr变量进行解析并赋给变量$postObj。simplexml_load_string()为php中解析XML的一个函数,参数SimpleXMLElement为新对象的类,LIBXML_NOCDATA表示将CDATA设置为文本节点。CDATA标签中的文本XML不进行解析。六、官方示例代码解析6.2官方代码(共90行)(4)$fromUsername=$postObj-FromUserName;$toUsername=$postObj-ToUserName;$keyword=trim($postO

27、bj-Content);$time=time();$textTpl=%s 0;363738394041424344454647第36行将用户端的用户名(OpenID)赋予变量$fromUsername。第37行将微信公众账号ID赋予变量$toUsername。第38行将用户端微信发送的文本内容去掉空格后赋予变量$keyword。第39行将系统时间赋予变量$time。第40行构建XML格式的文本赋予变量$textTpl。Xml格式为微信内容固定格式、xml是一种简单的数据存储语言,它要求每个标签度都开始和结束标记可以嵌套使用。第41到47行为xml具体格式,%s表示转换为字符型数据类型。CDAT

28、A表示不转义。41行微信目标方,42行来源方,43行创建时间,44行回复微信信息类型,45行回复微信的内容,46行是否为星标微信。47行xml结构体结束六、官方示例代码解析6.2官方代码(共90行)(5)if(!empty($keyword)$msgType=text;$contentStr=Welcome to wechat world!;$resultStr=sprintf($textTpl,$fromUsername,$toUsername,$time,$msgType,$contentStr);echo$resultStr;else echo Input something.;else

29、 echo;exit;484950515253545556575859606162第48行如果用户端发来文本内容不为空,则执行第49到53行代码,否则执行54到56行代码。第50行回复文本信息类型为text型,变量名为$msgType。51行为回复的具体内容赋值给变量$contentStr。要更改内容就在这里要更改内容就在这里开发关键所在。开发关键所在。52行将xml格式中的变量分别赋值。Sprintf()函数为变参函数$textTpl有5个%s因此需要5个参数,即带%S的变量参数。53行输出回复信息给用户。55行提示输入信息该消息不会发送给用户,只用于调试。59行微信端没有信息时回复为空。服

30、务器无法保证在5秒处理并回复消息必须回复空串,否则会提示用户该公众号暂时无法提供服务,清扫后再试。60行退出。六、官方示例代码解析6.2官方代码(共90行)(6)private function checkSignature()/you must define TOKEN by yourself if(!defined(TOKEN)throw new Exception(TOKEN is not defined!);$signature=$_GETsignature;$timestamp=$_GETtimestamp;$nonce=$_GETnonce;$token=TOKEN;$tmpArr

31、=array($token,$timestamp,$nonce);64656667686970717273747576第64行到第86行为签名验证程序,私有的checkSignature方法被第19行代码调用。加密校验流程为:1、将token、timestamp、nonce三个参数进行字典序排序;2、将这三个参数字符串拼接成一个字符串进行SHA1加密;3、开发者将获得加密后的字符串与Signature对比,标识该请求是否来源于微信。64行定义签名验证函数checkSignature();66行注释,必须定义token;67行判断是否定义token没有定义68行抛出异常;71行从用户微信端获取签

32、名赋予变量$signature;72行从用户微信端获取时间戳予变量$timestamp;73行从用户端获取随机数赋予变量$nonce;75行将常量token值赋予$token;76行建立数组变量$tmpArr存放$token、$timestamp、$nonce。六、官方示例代码解析6.2官方代码(共90行)(7)/use SORT_STRING rulesort($tmpArr,SORT_STRING);$tmpStr=implode($tmpArr);$tmpStr=sha1($tmpStr);if($tmpStr=$signature)return true;elsereturn fals

33、e;?7778798081828384858687888990第77行注释排序时按字符串排序,时间戳和随机数均为数字,为避免混淆,提醒使用字符顺序排序;78行按字符顺序排序数组;79数组元数拼接为字符串赋予$tmpStr;80行sha1加密字符串$tmpStr;82到86行$tmpStr与$signature变量是否相等,相等返回true,不等返回false;90行,php结束符号。订阅号自动回复订阅号群发功能自定义菜单开发模式环境搭建官方示例解释php消息自动回复七、消息自动回复7.1 接口验证代码修改为返回消息代码valid();$wechatObj-responseMsg();/调用回复

34、信息方法12345678910官方示例代码默认为验证接口。修改为返回消息代码。将第9行前面加/注释掉,第10行增加一句$wechatObj-responseMsg();。防止更换服务器需要重新验证接口,第9行保留为注释状态保存,需要时再恢复。第10行调用第25行回复消息方法。打包后上传到服务器、用户输入任何消息即可回复Welcome to wechat world!七、消息自动回复7.2 修改返回消息为中文if(!empty($keyword)$msgType=text;$contentStr=欢迎使用公众号!;$resultStr=sprintf($textTpl,$fromUsername

35、,$toUsername,$time,$msgType,$contentStr);echo$resultStr;else echo Input something.;else echo;exit;484950515253545556575859606162第48到62行为返回消息核心代码,第51行为具体返回公众号消息,如要根据关键词$keyword回复,则将51行替换成选择结构的语句块即可。即用if结构替换。七、消息自动回复7.3 修改为关键词回复消息if(!empty($keyword)$msgType=text;if($keyword=1)/$contentStr=欢迎使用公众号!;关键词

36、为1时回复$contentStr=进一步选择请n输入11学习PHP相关知识;n输入12学习MySQL相关知识;n输入13了解相关术语的解析。elseif($keyword=2)$contentStr=1、微信官方微信公众平台技术文档,地址:https:/ echo Input something.;else echo;exit;484950515253545556575859606162第51替换为3个if.elseif嵌套完成选择结构。七、消息自动回复 7.3.1 关注/取消事件推送XML数据包示例:123456789 注:关注与取消事件MsgType值为eventEvent事件类型值有两个

37、:一是subscribe对应关注,二是unsubscribe对应取消订阅。七、消息自动回复7.3.2 被关注回复$keyword=trim($postObj-Content);$time=time();$msgType=$postObj-MsgType;$Event=$postObj-Event;$textTpl=if($msgType=event&$Event=subscribe)$contentStr=感谢你的关注!nn输入1学习微信平台课程教学相关知识;n输入2查看相关资源;n输入3了解教师联系方式;n更详细内容请点击下面菜单。;$resultStr=sprintf($textTpl,$

38、fromUsername,$toUsername,$time,$msgType,$contentStr);echo$resultStr;if(!empty($keyword)$msgType=text;if($keyword=1)/$contentStr=欢迎使用公众号!;关键词为1时回复$contentStr=进一步选择请n输入11学习PHP相关知识;n输入12学习MySQL相关知识;n输入13了解相关术语的解析。elseif($keyword=2)383940.484950修改2处:1、40行前增加$msgType和$Event两个变量用于保存消息类型和事件类型 2、48行前增加判断消息类

39、型是否为事件及是否为关注事件,如均是则返回被关注消息。七、消息自动回复7.3.3 使用switch完整代码清单(1)public function responseMsg()/get post data,May be due to the different environments$postStr=$GLOBALSHTTP_RAW_POST_DATA;/extract post dataif(!empty($postStr)/*libxml_disable_entity_loader is to prevent XML eXternal Entity Injection,the best w

40、ay is to check the validity of xml by yourself*/libxml_disable_entity_loader(true);$postObj=simplexml_load_string($postStr,SimpleXMLElement,LIBXML_NOCDATA);$fromUsername=$postObj-FromUserName;$toUsername=$postObj-ToUserName;$keyword=trim($postObj-Content);$time=time();$msgType=$postObj-MsgType;$Even

41、t=$postObj-Event;$textTpl=%s/CreateTime七、消息自动回复7.3.3 使用switch完整代码清单(2)0 ;switch($msgType)case event:if($Event=subscribe)$contentStr=感谢你的关注!nn输入1学习微信平台课程教学相关知识;n输入2查看相关资源;n输入3了解教师联系方式;n更详细内容请点击下面菜单。;break;case text:switch($keyword)case 1:$contentStr=进一步选择请n输入11学习PHP相关知识;n输入12学习MySQL相关知识;n输入13了解相关术语的解

42、析。;break;七、消息自动回复7.3.3 使用switch完整代码清单(2)case 2:$contentStr=1、微信官方微信公众平台技术文档,地址:https:/ 3:$contentStr=联系我们n李老师nQQ、微信号:303691716n办公地点:计算机学院8-105n陈老师nQQ、微信号:329805459n办公地点:创新创业学院209。;break;default:$contentStr=联系我们n李老师nQQ、微信号:303691716n办公地点:计算机学院8-105n陈老师nQQ、微信号:329805459n办公地点:创新创业学院209。;break;$msgType=text;$resultStr=sprintf($textTpl,$fromUsername,$toUsername,$time,$msgType,$contentStr);echo$resultStr;else echo;exit;小结 l本章小结 本章首先简要介绍微信公众平台订阅号编辑模式开发,消息群发、自动回复、自定义菜单。开发模式搭建、需要的基础知识准备php语言及官方开发示例程序。最后介绍了基于官方实例的修改编写的消息自动回复程序。THANKS

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|