JavaScript Editor Javascript debugger     Website design 

WDDX Functions

Introduction

These functions are intended for work with » WDDX.

Requirements

In order to use WDDX, you will need to install the expat library (which comes with Apache 1.3.7 or higher).

Installation

After installing expat compile PHP with --enable-wddx.

The windows version of PHP has built in support for this extension. You do not need to load any additional extension in order to use these functions.

Runtime Configuration

This extension has no configuration directives defined in php.ini.

Resource Types

This extension defines a WDDX packet identifier returned by wddx_packet_start().

Predefined Constants

This extension has no constants defined.

Examples

All the functions that serialize variables use the first element of an array to determine whether the array is to be serialized into an array or structure. If the first element has string key, then it is serialized into a structure, otherwise, into an array.

Example 2612. Serializing a single value with WDDX

<?php
echo wddx_serialize_value("PHP to WDDX packet example", "PHP packet");
?>

This example will produce:

<wddxPacket version='1.0'><header comment='PHP packet'/><data>
<string>PHP to WDDX packet example</string></data></wddxPacket>


Example 2613. Using incremental packets with 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);
echo
$packet;
?>

This example will produce:

<wddxPacket version='1.0'><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>


Note:

If you want to serialize non-ASCII characters you have to convert your data to UTF-8 first (see utf8_encode() and iconv()).

Table of Contents

wddx_add_vars — Add variables to a WDDX packet with the specified ID
wddx_deserialize — Alias of wddx_unserialize()
wddx_packet_end — Ends a WDDX packet with the specified ID
wddx_packet_start — Starts a new WDDX packet with structure inside it
wddx_serialize_value — Serialize a single value into a WDDX packet
wddx_serialize_vars — Serialize variables into a WDDX packet
wddx_unserialize — Unserializes a WDDX packet