PHP Doku:: Decodes XML into native PHP types - function.xmlrpc-decode.html

Verlauf / Chronik / History: (46) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzWeb ServicesXML-RPCXML-RPC Funktionenxmlrpc_decode

Ein Service von Reinhard Neidl - Webprogrammierung.

XML-RPC Funktionen

<<xmlrpc_decode_request

xmlrpc_encode_request>>

xmlrpc_decode

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_decodeDecodes XML into native PHP types

Beschreibung

mixed xmlrpc_decode ( string $xml [, string $encoding = "iso-8859-1" ] )
Warnung

Diese Funktion ist EXPERIMENTELL. Das Verhalten, der Funktionsname und alles Andere, was hier dokumentiert ist, kann sich in zukünftigen PHP-Versionen ohne Ankündigung ändern. Seien Sie gewarnt und verwenden Sie diese Funktion auf eigenes Risiko.

Parameter-Liste

xml

XML response returned by XMLRPC method.

encoding

Input encoding supported by iconv.

Rückgabewerte

Returns either an array, or an integer, or a string, or a boolean according to the response returned by the XMLRPC method.

Beispiele

See example by xmlrpc_encode_request().

Siehe auch


3 BenutzerBeiträge:
- Beiträge aktualisieren...
ryon dot sherman at gmail dot com
22.08.2009 1:18
64 bit (i8) integers are not parsed by xmlrpc_decode().
Use a string replacement to work around this:

<?php

$xml
= str_replace('i8>', 'i4>', $xml);

$decoded_xml = xmlrpc_decode($xml);

?>
david dot bachelart at polytechnique dot org
18.07.2004 17:18
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 &amp; b</string></value>
         </param>
      </params>
   </methodResponse>

If your server does not encode responses properly, you may have to process responses before parse.
hfuecks at pinkgoblin dot com
16.08.2002 12: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);
?>



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)