现在的位置: 首页 > 综合 > 正文

WDDX 函数库

2014年02月18日 ⁄ 综合 ⁄ 共 2321字 ⁄ 字号 评论关闭

 

WDDX 为全球信息网分散式文件交换,全名为 Web Distributed Data Exchange。其实 WDDX 可以算是 XML 的一个分支。更多有关 WDDX 的信息可以参考 http://www.wddx.org。
例一: 本例将单一值连续化
<?php
print wddx_serialize_value("PHP to WDDX packet example", "PHP packet");
?>
返回到浏览器的资料为

<wddxPacket version='0.9'><header comment='PHP packet'/><data>
<string>PHP to WDDX packet example</string></data></wddxPacket>
例二: 本例将 WDDX 封包加入资料
<?php
$pi = 3.1415926;
$packet_id = wddx_packet_start("PHP");
wddx_add_vars($packet_id, "pi");
/* Suppose $cities came from database */
$cities = array("Austin", "Novato", "Seattle");
wddx_add_vars($packet_id, "cities");

$packet = wddx_packet_end($packet_id);
print htmlentities($packet);
?>
返回到浏览器的资料为
<wddxPacket version='0.9'><header comment='PHP'/><data><struct>
<var name='pi'><number>3.1415926</number></var><var name='cities'>
<array length='3'><string>Austin</string><string>Novato</string>
<string>Seattle</string></array></var></struct></data></wddxPacket

wddx_serialize_value: 将单一值连续化。
wddx_serialize_vars: 将多值连续化。
wddx_packet_start: 开始新的 WDDX 封包。
wddx_packet_end: 结束的 WDDX 封包。
wddx_add_vars: 将 WDDX 封包连续化。
wddx_deserialize: 将 WDDX 封包解连续化。

wddx_serialize_value
将单一值连续化。
语法: string wddx_serialize_value(mixed var, string [comment]);
返回值: 字符串
函数种类: 资料处理
内容说明: 本函数将单一数值连续化,并将它送到 WDDX 封包中。参数 var 为值的内容。参数 comment 可省略,为在封包表头的字符串。

wddx_serialize_vars
将多值连续化。
语法: string wddx_serialize_vars(string var_name | array var_names [, ... ] );
返回值: 字符串
函数种类: 资料处理
内容说明: 本函数将多数值连续化,并将它送到 WDDX 封包中。参数依次为值的内容,可以是字符串或是数组。
使用范例
<?php
$a = 1;
$b = 5.5;
$c = array("blue", "orange", "violet");
$d = "colors";
$clvars = array("c", "d");
print wddx_serialize_vars("a", "b", $clvars);
?>
返回浏览器的资料为
<wddxPacket version='0.9'><header/><data><struct><var name='a'><number>1</number></var>
<var name='b'><number>5.5</number></var><var name='c'><array length='3'>
<string>blue</string><string>orange</string><string>violet</string></array></var>
<var name='d'><string>colors</string></var></struct></data></wddxPacket>

wddx_packet_start
开始新的 WDDX 封包。
语法: int wddx_packet_start(string [comment]);
返回值: 整数
函数种类: 资料处理
内容说明: 本函数开始新的 WDDX 封包 (packet)。

wddx_packet_end
结束的 WDDX 封包。
语法: string wddx_packet_end(int packet_id);
返回值: 字符串
函数种类: 资料处理
内容说明: 本函数结束 WDDX 封包 (packet),并返回封包的资料字符串。参数 packet_id 为封包的代码。

wddx_add_vars
WDDX 封包连续化。
语法: boolean wddx_add_vars(int packet_id, ...);
返回值: 布尔值
函数种类: 资料处理
内容说明: 本函数将多个 WDDX 封包 (packet) 连续化成一个。若有错误则返回 false。

wddx_deserialize
WDDX 封包解连续化。
语法: mixed wddx_deserialize(string packet);
返回值: 混合类型资料
函数种类: 资料处理
内容说明: 本函数将 WDDX 封包 (packet) 解连续化成分散资料。参数 packet 为封包字符串。返回值可能为字符串、数字、或者数组等。

【上篇】
【下篇】

抱歉!评论已关闭.