版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、PHP Web程序设计教程与实验,第14章 PHP和Web分布式数据交换,第14章 PHP和Web分布式数据交换,14.1 WDDX概述 14.2 WDDX的结构 14.3 PHP WDDX函数的使用 14.4 创建基于WDDX的Web服务,14.1 WDDX概述,14.1.1 WDDX概述 14.1.2 WDDX数据类型,14.1.1 WDDX概述,WDDX,英文全称为Web Distributed Data Exchange,是一种基于XML的Web分布式数据交换技术。 利用WDDX,可以将一个Web应用程序的变量(包括变量名字、数据类型和值)串行化为XML文档(称为WDDX包),再发送到
2、另一个Web应用程序。,14.1.1 WDDX概述,WDDX使用HTTP协议,在Web应用程序之间进行数据传输。利用串行化和反串行化函数,将本地数据串行化为WDDX包格式和将WDDX包格式的数据反串行化为本地数据类型的过程,如图14.1所示。,串行化:接受数据,将数据转换为WDDX包。 反串行化:将WDDX包的数据转换为本地的原数据类型。,14.1.2 WDDX数据类型,WDDX支持的数据类型:,14.2 WDDX的结构,14.2.1 WDDX的结构 14.2.2 简单的数据类型元素 14.2.3 复杂的数据类型元素,14.2.1 WDDX的结构,WDDX包是一个WDDX格式的XML文档。 以
3、wddxPacket元素为文档元素,包含一个header元素和一个data元素,header元素是注释的容器,data元素是要交换的实际数据的容器。 wddxPacket元素有一个version属性,指定WDDX的版本。,14.2.1 WDDX的结构,一个没有comment元素的WDDX包的结构如下: ,14.2.1 WDDX的结构,含有comment元素的WDDX结构如下: 这是包的注释内容 ,14.2.2 简单的数据类型元素,简单数据类型元素: 1null元素:表示一个NULL值 2boolean元素:表示布尔值,其值可以是true或false。 3number元素: 表示浮点数字。 4d
4、ateTime元素: 以ISO 8601格式表示日期和时间。 5string元素: 包含任意长度的字符串,字符串中不能含有NULL。,14.2.3 复杂的数据类型元素,复杂的数据类型元素包括array、struct、recordset和binary元素。 array元素 array元素保存数组元素下标为整数的数组的数据。 array元素的子元素表示数组元素值,如: array(a, 1, false); array(0=a, 1=1, 2=false); 串行化为WDDX包,生成的array元素都是如下结果: a 1 ,14.2.3 复杂的数据类型元素,struct元素 结构是以字符串为索引的
5、数据集合。struct元素表示结构化的内容。 struct元素是0个或多个var元素的容器,这些元素表示变量或类的属性,其name属性存放变量名或类属性名。,14.2.3 复杂的数据类型元素,例如: 1, key2=2); ?, 12345 This is a string 1 2 ,生成的struct元素,14.2.3 复杂的数据类型元素,recordset元素 recordset元素由任意多个field子元素组成 recordset元素有两个属性: rowCount属性定义行数 fieldNames属性定义字段名列表,14.2.3 复杂的数据类型元素,例如,一个记录集如下:,当使用reco
6、rdset元素存储该记录集时,数据被串行化为: 1 2 张小春 李大锋 20 25 ,14.2.3 复杂的数据类型元素,binary元素 binary元素表示二进制大对象(BLOB)数据,如图形数据,它是二进制数据表示的字符串。WDDX 1.0要求对二进制数采用Base-64编码。 如: ,14.3 PHP WDDX函数的使用,14.3.1 用WDDX串行化数据 14.3.2 反串行化数据,14.3.1 用WDDX串行化数据,简单串行化 string wddx_serialize_value(mixed var , string comment) 创建一个含有一个值的WDDX包。,【例14.1
7、】wddx_serialize_value()函数的示例。 ,14.3.1 用WDDX串行化数据,简单串行化 string wddx_serialize_value(mixed var , string comment) 创建一个含有一个值的WDDX包。,【例14.1】wddx_serialize_value()函数的示例。 ,14.3.1 用WDDX串行化数据,string wddx_serialize_vars(mixed var1 , mixed var2, .) 创建一个含有结构的WDDX包,该结构中包括传递给函数的变量的串行化数据元素。 使用wddx_serialize_vars()
8、函数,允许按名字串行化任意多个变量。,【例14.2】wddx_serialize_vars()函数的示例 。,14.3.1 用WDDX串行化数据,复杂的串行化 int wddx_packet_start(string comment) 创建一个新的WDDX包,并自动创建一个WDDX包的结构定义。 bool wddx_add_vars(int packet_id, mixed var1 , mixed var2,.) 串行化一个或多个变量,并添加到指定的WDDX包。 string wddx_packet_end(int packet_id) 该函数关闭由WDDX包标识符指定的WDDX包,返回一个表示WDDX包的字符串。,14.3.2 反串行化数据,反串行化是将一个WDDX包转换为一个相关的PHP变量的过程。 反串行化函数: mixed wddx_deserialize(string packet) 将WDDX包反串化为PHP的本地数据。返回的值可以是字符串、数值或数组。,14.4 创建基
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 墩柱模板施工方案
- 建筑施工施工现场隧道工程规范
- 榆林市2026幼儿园教师招聘考试-学前教育专业知识题库(含答案)
- 2025年宪法知识竞赛参考培训试题及答案
- 2026年县乡教师选调考试《教育学》通关提分题库及答案详解【名师系列】
- 2025年新版电焊入场考试题及答案解析
- 2026年墙面修缮合同(1篇)
- 2026年借贷合同还款合同(1篇)
- 宠物寄养服务公司客户退款处理管理制度
- 宠物寄养服务公司节假日寄养服务协调管理制度
- 人力资源配置优化标准化表格
- 妇产科年度科室工作汇报
- 2025年度大学生青海西部计划志愿者招募笔试试题库及答案
- 维吾尔族文化音乐介绍
- DB15∕T 2763-2022 一般工业固体废物用于矿山采坑回填和生态恢复技术规范
- 宣传儿科科室简介
- 足球绕杆射门课件
- 第8课世界市场与商业贸易-高二历史统编版选择性必修2经济与社会生活
- 有限空间作业事故应急演练脚本(2篇)
- 锂电池pack工厂安全培训课件
- 记者工作基础知识培训课件
评论
0/150
提交评论