bug24640.phpt 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. --TEST--
  2. Bug #24640 (var_export and var_dump can't output large float)
  3. --INI--
  4. precision=12
  5. serialize_precision=17
  6. --FILE--
  7. <?php
  8. function test($v)
  9. {
  10. echo var_export($v, true) . "\n";
  11. var_dump($v);
  12. echo "$v\n";
  13. print_r($v);
  14. echo "\n------\n";
  15. }
  16. test(1.7e+300);
  17. test(1.7e-300);
  18. test(1.7e+79);
  19. test(1.7e-79);
  20. test(1.7e+80);
  21. test(1.7e-80);
  22. test(1.7e+81);
  23. test(1.7e-81);
  24. test(1.7e+319);
  25. test(1.7e-319);
  26. test(1.7e+320);
  27. test(1.7e-320);
  28. test(1.7e+321);
  29. test(1.7e-321);
  30. test(1.7e+324);
  31. test(1.7e-324);
  32. test(1.7e+1000);
  33. test(1.7e-1000);
  34. ?>
  35. --EXPECTF--
  36. 1.7000000000000001E+300
  37. float(1.7000000000000001E+300)
  38. 1.7E+300
  39. 1.7E+300
  40. ------
  41. 1.7000000000000001E-300
  42. float(1.7000000000000001E-300)
  43. 1.7E-300
  44. 1.7E-300
  45. ------
  46. 1.7000000000000002E+79
  47. float(1.7000000000000002E+79)
  48. 1.7E+79
  49. 1.7E+79
  50. ------
  51. 1.6999999999999999E-79
  52. float(1.6999999999999999E-79)
  53. 1.7E-79
  54. 1.7E-79
  55. ------
  56. 1.7E+80
  57. float(1.7E+80)
  58. 1.7E+80
  59. 1.7E+80
  60. ------
  61. 1.7E-80
  62. float(1.7E-80)
  63. 1.7E-80
  64. 1.7E-80
  65. ------
  66. 1.7E+81
  67. float(1.7E+81)
  68. 1.7E+81
  69. 1.7E+81
  70. ------
  71. 1.6999999999999999E-81
  72. float(1.6999999999999999E-81)
  73. 1.7E-81
  74. 1.7E-81
  75. ------
  76. I%s
  77. float(I%s)
  78. I%s
  79. I%s
  80. ------
  81. 1.6999810742105611E-319
  82. float(1.6999810742105611E-319)
  83. 1.69998107421E-319
  84. 1.69998107421E-319
  85. ------
  86. I%s
  87. float(I%s)
  88. I%s
  89. I%s
  90. ------
  91. 1.7000798873397294E-320
  92. float(1.7000798873397294E-320)
  93. 1.70007988734E-320
  94. 1.70007988734E-320
  95. ------
  96. I%s
  97. float(I%s)
  98. I%s
  99. I%s
  100. ------
  101. 1.6995858216938881E-321
  102. float(1.6995858216938881E-321)
  103. 1.69958582169E-321
  104. 1.69958582169E-321
  105. ------
  106. I%s
  107. float(I%s)
  108. I%s
  109. I%s
  110. ------
  111. 0.0
  112. float(0)
  113. 0
  114. 0
  115. ------
  116. I%s
  117. float(I%s)
  118. I%s
  119. I%s
  120. ------
  121. 0.0
  122. float(0)
  123. 0
  124. 0
  125. ------