hexadecimal_64bit.phpt 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. --TEST--
  2. Hexadecimal integer strings (64bit)
  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. /* Using hexadecimal prefix notation lowercase */
  10. /* Maximum value representable as integer */
  11. $hex = 0x7FFFFFFFFFFFFFFF;
  12. var_dump($hex);
  13. var_dump(PHP_INT_MAX);
  14. /* Floating number */
  15. $hex = 0x45FFFABCDE0000000;
  16. var_dump($hex);
  17. /* Integer */
  18. $hex = 0x1C;
  19. var_dump($hex);
  20. /* underscore separator */
  21. $hex = 0x1_C;
  22. var_dump($hex);
  23. /* Ignore leading 0 and _ */
  24. $hex = 0x0_01C;
  25. var_dump($hex);
  26. $hex = 0x0_1C;
  27. var_dump($hex);
  28. /* Overflow to infinity */
  29. $hex = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF;
  30. var_dump($hex);
  31. /* Using hexadecimal prefix notation uppercase */
  32. /* Maximum value representable as integer */
  33. $hex = 0X7FFFFFFFFFFFFFFF;
  34. var_dump($hex);
  35. var_dump(PHP_INT_MAX);
  36. /* Floating number */
  37. $hex = 0X45FFFABCDE0000000;
  38. var_dump($hex);
  39. /* Integer */
  40. $hex = 0X1C;
  41. var_dump($hex);
  42. /* underscore separator */
  43. $hex = 0X1_C;
  44. var_dump($hex);
  45. /* Ignore leading 0 and _ */
  46. $hex = 0X0_01C;
  47. var_dump($hex);
  48. $hex = 0X0_1C;
  49. var_dump($hex);
  50. /* Overflow to infinity */
  51. $hex = 0XFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF;
  52. var_dump($hex);
  53. ?>
  54. --EXPECT--
  55. int(9223372036854775807)
  56. int(9223372036854775807)
  57. float(8.070441274821732E+19)
  58. int(28)
  59. int(28)
  60. int(28)
  61. int(28)
  62. float(INF)
  63. int(9223372036854775807)
  64. int(9223372036854775807)
  65. float(8.070441274821732E+19)
  66. int(28)
  67. int(28)
  68. int(28)
  69. int(28)
  70. float(INF)