ID: 41097
Updated by: [EMAIL PROTECTED]
Reported By: r dot korving at xit dot nl
-Status: Open
+Status: Assigned
Bug Type: SOAP related
Operating System: Debian
PHP Version: 5.2.1
-Assigned To:
+Assigned To: dmitry
Previous Comments:
------------------------------------------------------------------------
[2007-04-16 06:59:17] r dot korving at xit dot nl
Description:
------------
Returning array('5' => 'Foo', '10' => 'Bar') from a SoapServer handler
class ends up as array(0 => 'Foo', 1 => 'Bar') at the client end. But
array('a' => 'Foo', 'b' => 'Bar') does end up correctly. It only fails
with numeric keys. I'm not using WSDL in this case. I think integer keys
that are not in a simple 0..n range should end up in an associative
array, not indexed with new 0..n keys.
Reproduce code:
---------------
<?php
class MyHandler
{
public function getData()
{
return array('5' => 'Foo', '10' => 'Bar');
}
}
// initialize soap-server:
$soap = new SoapServer(null, array('uri' => 'http://uri/', 'encoding'
=> 'ISO-8859-1'));
$soap->setClass('MyHandler');
$soap->handle();
?>
Expected result:
----------------
array('5' => 'Foo', '10' => 'Bar')
Actual result:
--------------
array(0 => 'Foo', 1 => 'Bar')
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=41097&edit=1