ID:               48670
 Updated by:       j...@php.net
 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

Reply via email to