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

PHP微信开发基础教程(第三篇):详解消息类型处理

在本文中,我们将详细介绍如何构建一个用于自动回复消息的XML类。当微信服务器接收到用户消息时,该类将生成相应的自动回复消息。以下是具体的代码实现:```phpclassWe_Xml{//代码内容}```通过这个类,开发者可以轻松地处理各种消息类型,并实现高效的自动回复功能。我们将深入探讨类的各个方法和属性,帮助读者更好地理解和应用这一技术。

下面,写一个构造自动回复消息的xml类,在微信接收到消息的时候,进行自动消息回复,贴上我的代码

class We_Xml {

/**

* 构造图文消息最小为1最大为20

* 可以从外部传入图文数组变量

* @var array

*/

public $news = array (

"0" => array (

"title" => "图文消息0",//图文标题

"description" => "图文消息0",//图文描述

"picurl" => "http://www.baidu.com/xxx.jpg",//图片链接

"url" => "www.baidu.com"//图文消息地址

),

"1" => array (

"title" => "图文消息1",

"description" => "图文消息1",

"picurl" => "http://www.baidu.com/xxx.jpg",

"url" => "www.baidu.com"

),

"2" => array (

"title" => "图文消息2",

"description" => "图文消息2",

"picurl" => "http://www.baidu.com/xxx.jpg",

"url" => "www.baidu.com"

)

);

/**

* 回复文本消息

*

* @param string $toU 公众号id

* @param string $fromU 用户id

* @param string $time 时间

* @param string $msg 消息内容

* @return string

*/

public function send_Text($toU, $fromU, $time, $msg) {

$xml = "

{$time}

";

return $xml;

}

/**

* 回复图文消息

*

* @param string $toU 公众号id

* @param string $fromU 用户id

* @param string $time 时间

* @return string

*/

public function send_News($toU, $fromU, $time) {

$i=0;

$xml = "

{$time}

%s

";

$v="";

//循环构造图文消息

foreach ( $this->news as $x ) {

$c = "

";

$v = $v . $c;

$i++;

continue;

}

$v = $v . "\n\n";

$retrun = $xml . $v;

//格式化计数

$retrun=sprintf($retrun,$i);

return $retrun;

}

/**

* 回复图片消息

*

* @param string $toU 公众号id

* @param string $fromU 用户id

* @param string $time 时间

* @param string $imgid 上传媒体id

* @return string

*/

public function send_Img($toU, $fromU, $time, $imgid) {

$xml = "

{$time}

";

return $xml;

}

public function send_Video($toU, $fromU, $time, $media_id){

$xml&#61;<<

{$time}

XML;

return $xml;

}

/**

* 回复视频消息

*

* &#64;param string $toU 公众号id

* &#64;param string $fromU用户id

* &#64;param string $time 时间

* &#64;param string $media_id 上传媒体id

* &#64;param string $title 视频标题

* &#64;param string $description 视频描述

* &#64;return string

*/

public function send_Audio($toU, $fromU, $time, $media_id,$title,$description){

$xml&#61;<<

{$time}

XML;

return $xml;

}

/**

* 回复音乐消息

*

* &#64;param string $toU 公众号id

* &#64;param string $fromU 用户id

* &#64;param string $time 时间

* &#64;param string $media_id 上传媒体id

* &#64;param string $title 标题

* &#64;param string $description 描述

* &#64;param string $url 音乐地址

* &#64;param string $HQ_url 高清音乐地址&#xff0c;在WiFi环境下优先调用

* &#64;return string

*/

public function send_Music($toU, $fromU, $time, $media_id,$title,$description,$url,$HQ_url&#61;null){

//如果未添加$HQ_url则使他与$url相同

if($HQ_url&#61;null){

$HQ_url&#61;$url;

}

$xml&#61;<<

{$time}

XML;

return $xml;

}

/**

* 回复语音消息

*

* &#64;param string $toUser

* &#64;param string $fromUser

* &#64;param string $time

* &#64;param string $media_id

* &#64;return string

*/

public function send_voice($toUser,$fromUser,$time,$media_id){

$xml&#61;<<

{$time}

XML;

return $xml;

}

}

?>



推荐阅读
  • OBS Studio自动化实践:利用脚本批量生成录制场景
    本文探讨了如何利用OBS Studio进行高效录屏,并通过脚本实现场景的自动生成。适合对自动化办公感兴趣的读者。 ... [详细]
  • 入门指南:使用FastRPC技术连接Qualcomm Hexagon DSP
    本文旨在为初学者提供关于如何使用FastRPC技术连接Qualcomm Hexagon DSP的基础知识。FastRPC技术允许开发者在本地客户端实现远程调用,从而简化Hexagon DSP的开发和调试过程。 ... [详细]
  • 一、Advice执行顺序二、Advice在同一个Aspect中三、Advice在不同的Aspect中一、Advice执行顺序如果多个Advice和同一个JointPoint连接& ... [详细]
  • Requests库的基本使用方法
    本文介绍了Python中Requests库的基础用法,包括如何安装、GET和POST请求的实现、如何处理Cookies和Headers,以及如何解析JSON响应。相比urllib库,Requests库提供了更为简洁高效的接口来处理HTTP请求。 ... [详细]
  • 如何将955万数据表的17秒SQL查询优化至300毫秒
    本文详细介绍了通过优化SQL查询策略,成功将一张包含955万条记录的财务流水表的查询时间从17秒缩短至300毫秒的方法。文章不仅提供了具体的SQL优化技巧,还深入探讨了背后的数据库原理。 ... [详细]
  • 本文介绍了如何通过C#语言调用动态链接库(DLL)中的函数来实现IC卡的基本操作,包括初始化设备、设置密码模式、获取设备状态等,并详细展示了将TextBox中的数据写入IC卡的具体实现方法。 ... [详细]
  • 问题场景用Java进行web开发过程当中,当遇到很多很多个字段的实体时,最苦恼的莫过于编辑字段的查看和修改界面,发现2个页面存在很多重复信息,能不能写一遍?有没有轮子用都不如自己造。解决方式笔者根据自 ... [详细]
  • spring boot使用jetty无法启动 ... [详细]
  • 本文将从基础概念入手,详细探讨SpringMVC框架中DispatcherServlet如何通过HandlerMapping进行请求分发,以及其背后的源码实现细节。 ... [详细]
  • 使用Vue指令实现下拉菜单效果
    使用Vue指令实现下拉菜单效果模仿重庆红岩历史革命博物馆官网的导航栏内容和效果,使用Vue实现。官网地址如下:https:www.hongyan.info官网效果效果图片展示代码展 ... [详细]
  • 本文详细介绍了JQuery Mobile框架中特有的事件和方法,帮助开发者更好地理解和应用这些特性,提升移动Web开发的效率。 ... [详细]
  • Irish budget airline Ryanair announced plans to significantly increase its route network from Frankfurt Airport, marking a direct challenge to Lufthansa, Germany's leading carrier. ... [详细]
  • 图像处理学习笔记:噪声分析与去除策略
    本文详细探讨了不同类型的图像噪声及其对应的降噪技术,旨在帮助读者理解各种噪声的本质,并掌握有效的降噪方法。文章不仅介绍了高斯噪声、瑞利噪声、伽马噪声、指数噪声、均匀噪声和椒盐噪声等常见噪声类型,还特别讨论了周期噪声的特性及处理技巧。 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 探索百度WebFE团队打造的强大HTML5上传插件Web Uploader
    本文将详细介绍由百度WebFE团队开发的Web Uploader,这是一款集成了HTML5与Flash技术的上传组件,以其卓越的用户体验和强大的功能著称。 ... [详细]
author-avatar
dmcm0011
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有