bug47644.phpt 576 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. --TEST--
  2. Bug #47644 (valid large integers are truncated)
  3. --SKIPIF--
  4. <?php
  5. if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only");
  6. ?>
  7. --FILE--
  8. <?php
  9. for ($i = 10000000000000000; $i < 10000000000000006; $i++) {
  10. var_dump(json_decode("[$i]"));
  11. }
  12. echo "Done\n";
  13. ?>
  14. --EXPECT--
  15. array(1) {
  16. [0]=>
  17. int(10000000000000000)
  18. }
  19. array(1) {
  20. [0]=>
  21. int(10000000000000001)
  22. }
  23. array(1) {
  24. [0]=>
  25. int(10000000000000002)
  26. }
  27. array(1) {
  28. [0]=>
  29. int(10000000000000003)
  30. }
  31. array(1) {
  32. [0]=>
  33. int(10000000000000004)
  34. }
  35. array(1) {
  36. [0]=>
  37. int(10000000000000005)
  38. }
  39. Done