Be careful with encodings, the xmlrpc-decode function is rather strict. For example, the following response parse returns NULL :
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value><string>a & b</string></value>
</param>
</params>
</methodResponse>
You should use entities :
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value><string>a & b</string></value>
</param>
</params>
</methodResponse>
If your server does not encode responses properly, you may have to process responses before parse.
xmlrpc_decode
(PHP 4 >= 4.0.7, PHP 5)
xmlrpc_decode — Decodifica XML nei nativi tipi di PHP
Descrizione
array xmlrpc_decode
( string $xml
[, string $encoding
] )
Avviso
Questa funzione è SPERIMENTALE. Ovvero, il comportamento di questa funzione, il nome di questa funzione, in definitiva tutto ciò che è documentato qui può cambiare nei futuri rilasci del PHP senza preavviso. Siete avvisati, l'uso di questa funzione è a vostro rischio.
Avviso
Questa funzione, al momento non è documentata; è disponibile soltanto la lista degli argomenti.
xmlrpc_decode
david dot bachelart at polytechnique dot org
18-Jul-2004 08:18
18-Jul-2004 08:18
hfuecks at pinkgoblin dot com
16-Aug-2002 03:57
16-Aug-2002 03:57
Use this with an XML-RPC client to decode a server response into native PHP variables. It will automatically translate the response XML-RPC data types into their PHP equivalents.
This function will return only false is there is any problem with format of the XML it receives.
The HTTP response header will need to be stripped off with something like;
<?php
$xml=(substr($response, strpos($response, "\r\n\r\n")+4));
$phpvars = xmlrpc_decode ($xml);
?>
