CVI. WDDX Functions


These functions are intended for work with WDDX.


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


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

Версия PHP для Windows-совместимых платформ имеет встроенную поддержку данного расширения. Это означает, что для использования данных функций не требуется загрузка никаких дополнительных расширений.

Настройка во время выполнения

Данное расширение не определяет никакие директивы конфигурации в php.ini.

Типы ресурсов

Данное расширение не определяет никакие типы ресурсов.

Предопределенные константы

Данное расширение не определяет никакие константы.


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.

Пример 1. Serializing a single value

print 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>

Пример 2. Using incremental packets

$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 $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>

Замечание: If you want to serialize non-ASCII characters you have to set the appropriate locale before doing so (see setlocale()).

wddx_add_vars --  Add variables to a WDDX packet with the specified ID
wddx_deserialize -- Deserializes a WDDX packet
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