|
CIII. Функции WDDX
Эти функции предназначены для работы с
WDDX.
Чтобы использовать WDDX, вам необходимо установить библиотеку expat (которая поставляется с Аpache 1.3.7 или новее) и рекомпилировать PHP с
опциями --with-xml и --enable-wddx.
Примечание: если вы хотите сериализовать не-ASCII символы, вы должны предварительное
установить соответствующую локализацию (см.
setlocale()
).
Все функции, сериализующие переменные, используют первый элемент массива
для определения того, сериализован ли массив в массив или в структуру. Если
первый элемент имеет строковой ключ, то он сериализуется в структуру, иначе -
в массив.
Пример 1. Сериализация отдельного значения
<?php
print wddx_serialize_value("PHP to WDDX packet example", "PHP packet");
?>
|
|
На выходе этот пример даст:
<wddxPacket version='1.0'><header comment='PHP packet'/><data>
<string>PHP to WDDX packet example</string></data></wddxPacket>
|
Пример 2. Использование инкремекнтных пакетов
<?php
$pi = 3.1415926;
$packet_id = wddx_packet_start("PHP");
wddx_add_vars($packet_id, "pi");
/* Предположим, $cities пришла из БД */
$cities = array("Austin", "Novato", "Seattle");
wddx_add_vars($packet_id, "cities");
$packet = wddx_packet_end($packet_id);
print $packet;
?>
|
|
Это пример даст на выходе:
<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>
|
-
Содержание
-
wddx_add_vars - добавляет переменные в пакет WDDX со специфицированным ID
-
wddx_deserialize - десериализует WDDX-пакет
-
wddx_packet_end - заканчивает WDDX-пакет со специфицированным ID
-
wddx_packet_start - стартует новый WDDX-пакет со структурой в нём
-
wddx_serialize_value - сериализует отдельное значение в WDDX-пакет
-
wddx_serialize_vars - сериализует переменную в WDDX-пакет
|
|