bug37057.phpt 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. --TEST--
  2. Bug #37057 (xmlrpc_decode() may produce arrays with numeric string keys which are unaccessible)
  3. --SKIPIF--
  4. <?php if (!extension_loaded("xmlrpc")) print "skip"; ?>
  5. --FILE--
  6. <?php
  7. $response='<?xml version="1.0"?>
  8. <methodResponse>
  9. <params>
  10. <param>
  11. <value>
  12. <struct>
  13. <member>
  14. <name>50</name>
  15. <value><string>0.29</string></value>
  16. </member>
  17. </struct>
  18. </value>
  19. </param>
  20. </params>
  21. </methodResponse>';
  22. $retval=xmlrpc_decode($response);
  23. var_dump($retval);
  24. var_dump($retval["50"]);
  25. var_dump($retval[50]);
  26. $response='<?xml version="1.0"?>
  27. <methodResponse>
  28. <params>
  29. <param>
  30. <value>
  31. <struct>
  32. <member>
  33. <name>0</name>
  34. <value><string>0.29</string></value>
  35. </member>
  36. </struct>
  37. </value>
  38. </param>
  39. </params>
  40. </methodResponse>';
  41. $retval=xmlrpc_decode($response);
  42. var_dump($retval);
  43. var_dump($retval["0"]);
  44. var_dump($retval[0]);
  45. echo "Done\n";
  46. ?>
  47. --EXPECT--
  48. array(1) {
  49. [50]=>
  50. string(4) "0.29"
  51. }
  52. string(4) "0.29"
  53. string(4) "0.29"
  54. array(1) {
  55. [0]=>
  56. string(4) "0.29"
  57. }
  58. string(4) "0.29"
  59. string(4) "0.29"
  60. Done