From:             [EMAIL PROTECTED]
Operating system: Red Hat Linux 8.0
PHP version:      4.2.3
PHP Bug Type:     XMLRPC-EPI related
Bug description:  xmlrpc_encode_request does not maintain keys of non-zero-indexed 
arrays

When I run a sequence such as:

$test = array(1234 => 5, 5678 => 2);
$rpc = xmlrpc_encode_request("method", $test);
print $rpc;

the XMLRPC extension does not observe the non-zero-indexed nature of the
array and produces a request such as:

  <?xml version="1.0" encoding="iso-8859-1" ?> 
- <methodCall>
  <methodName>method</methodName> 
- <params>
- <param>
- <value>
  <int>5</int> 
  </value>
  </param>
- <param>
- <value>
  <int>2</int> 
  </value>
  </param>
  </params>
  </methodCall>

At the other end, this decodes to:

array(0 => 5, 1 => 2)

which is not the same as the original data passed. The same occurs when
using string types using numeric values as the array keys, eg.

array("1234" => 5, "5678" => 2)

or by using settype(... "string") on the array keys.

I believe that the XMLRPC extension should generate a <struct> for arrays
such as this, so that the number key to value mapping can be preserved.

Regards,

Chris.

-- 
Edit bug report at http://bugs.php.net/?id=21949&edit=1
-- 
Try a CVS snapshot:         http://bugs.php.net/fix.php?id=21949&r=trysnapshot
Fixed in CVS:               http://bugs.php.net/fix.php?id=21949&r=fixedcvs
Fixed in release:           http://bugs.php.net/fix.php?id=21949&r=alreadyfixed
Need backtrace:             http://bugs.php.net/fix.php?id=21949&r=needtrace
Try newer version:          http://bugs.php.net/fix.php?id=21949&r=oldversion
Not developer issue:        http://bugs.php.net/fix.php?id=21949&r=support
Expected behavior:          http://bugs.php.net/fix.php?id=21949&r=notwrong
Not enough info:            http://bugs.php.net/fix.php?id=21949&r=notenoughinfo
Submitted twice:            http://bugs.php.net/fix.php?id=21949&r=submittedtwice
register_globals:           http://bugs.php.net/fix.php?id=21949&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=21949&r=php3
Daylight Savings:           http://bugs.php.net/fix.php?id=21949&r=dst
IIS Stability:              http://bugs.php.net/fix.php?id=21949&r=isapi
Install GNU Sed:            http://bugs.php.net/fix.php?id=21949&r=gnused

Reply via email to