ID: 48670
Updated by: [email protected]
Reported By: zhangsilly at gmail dot com
-Status: Open
+Status: Bogus
Bug Type: XMLRPC-EPI related
Operating System: Windows XP
PHP Version: 5.2.10
New Comment:
More recent, same issue: bug #50285
Closing this in favor of the newer report.
Previous Comments:
------------------------------------------------------------------------
[2009-06-24 02:12:30] zhangsilly at gmail dot com
Description:
------------
xmlrpc_decode decode hashtable response with integer key will ignore
the key, just decode the same result as Vector.
Reproduce code:
---------------
ws-apache encode the Hashtable<Integer, String> as xmlrpc_decode's
parameter:
<?php
print_r(xmlrpc_decode('<?xml version="1.0"
encoding="UTF-8"?><methodResponse
xmlns:ex="http://ws.apache.org/xmlrpc/namespaces/extensions"><params><param><value><struct><member><name><value><i4>3</i4></value></name><value>wps2000</value></member><member><name><value><i4>0</i4></value></name><value>ddr</value></member></struct></value></param></params></methodResponse>'));
I format the xml response here:
<?xml version="1.0" encoding="UTF-8"?>
<methodResponse
xmlns:ex="http://ws.apache.org/xmlrpc/namespaces/extensions">
<params>
<param>
<value>
<struct>
<member>
<name>
<value>
<i4>3</i4>
</value>
</name>
<value>wps2000</value>
</member>
<member>
<name>
<value>
<i4>0</i4>
</value>
</name>
<value>ddr</value>
</member>
</struct>
</value>
</param>
</params>
</methodResponse>
It seems the xmlrpc_decode just take Hashtable<Integer, Object> as
Vector<Object>
Expected result:
----------------
array(
3 => wps2000
0 => ddr
)
Actual result:
--------------
Array
(
[0] => wps2000
[1] => ddr
)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=48670&edit=1