bug40576_64bit.phpt 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. --TEST--
  2. Bug #40576 (double values are truncated to 6 decimal digits when encoding)
  3. --SKIPIF--
  4. <?php
  5. if (!extension_loaded("xmlrpc")) print "skip";
  6. if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only");
  7. ?>
  8. --INI--
  9. precision=12
  10. --FILE--
  11. <?php
  12. var_dump(xmlrpc_encode(1.123456789));
  13. var_dump(xmlrpc_encode(11234567891010));
  14. var_dump(xmlrpc_encode(11234567));
  15. var_dump(xmlrpc_encode(""));
  16. var_dump(xmlrpc_encode("test"));
  17. var_dump(xmlrpc_encode("1.22222222222222222222222"));
  18. echo "Done\n";
  19. ?>
  20. --EXPECTF--
  21. string(125) "<?xml version="1.0" encoding="utf-8"?>
  22. <params>
  23. <param>
  24. <value>
  25. <double>1.123456789</double>
  26. </value>
  27. </param>
  28. </params>
  29. "
  30. string(119) "<?xml version="1.0" encoding="utf-8"?>
  31. <params>
  32. <param>
  33. <value>
  34. <int>-1066555326</int>
  35. </value>
  36. </param>
  37. </params>
  38. "
  39. string(116) "<?xml version="1.0" encoding="utf-8"?>
  40. <params>
  41. <param>
  42. <value>
  43. <int>11234567</int>
  44. </value>
  45. </param>
  46. </params>
  47. "
  48. string(106) "<?xml version="1.0" encoding="utf-8"?>
  49. <params>
  50. <param>
  51. <value>
  52. <string/>
  53. </value>
  54. </param>
  55. </params>
  56. "
  57. string(118) "<?xml version="1.0" encoding="utf-8"?>
  58. <params>
  59. <param>
  60. <value>
  61. <string>test</string>
  62. </value>
  63. </param>
  64. </params>
  65. "
  66. string(139) "<?xml version="1.0" encoding="utf-8"?>
  67. <params>
  68. <param>
  69. <value>
  70. <string>1.22222222222222222222222</string>
  71. </value>
  72. </param>
  73. </params>
  74. "
  75. Done