binary_32bit.phpt 3.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. --TEST--
  2. Binary integer strings (32bit)
  3. --SKIPIF--
  4. <?php
  5. if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only");
  6. ?>
  7. --FILE--
  8. <?php
  9. /* Using binary prefix notation lowercase */
  10. /* Maximum value representable as integer */
  11. $binary = 0b1111111111111111111111111111111;
  12. var_dump($binary);
  13. var_dump(PHP_INT_MAX);
  14. /* Floating number */
  15. $binary = 0b111111010000101010101010101010111111111111111111111111111111111111111111111111111111;
  16. var_dump($binary);
  17. /* Integer */
  18. $binary = 0b1010110;
  19. var_dump($binary);
  20. /* underscore separator */
  21. $binary = 0b1_010110;
  22. var_dump($binary);
  23. /* Ignore leading 0 and _ */
  24. $binary = 0b0_01010110;
  25. var_dump($binary);
  26. $binary = 0b0_1010110;
  27. var_dump($binary);
  28. /* Overflow to infinity */
  29. $binary = 0b111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111;
  30. var_dump($binary);
  31. /* Using binary prefix notation uppercase */
  32. /* Maximum value representable as integer */
  33. $binary = 0B1111111111111111111111111111111;
  34. var_dump($binary);
  35. var_dump(PHP_INT_MAX);
  36. /* Floating number */
  37. $binary = 0B111111010000101010101010101010111111111111111111111111111111111111111111111111111111;
  38. var_dump($binary);
  39. /* Integer */
  40. $binary = 0B1010110;
  41. var_dump($binary);
  42. /* underscore separator */
  43. $binary = 0B1_010110;
  44. var_dump($binary);
  45. /* Ignore leading 0 and _ */
  46. $binary = 0B0_01010110;
  47. var_dump($binary);
  48. $binary = 0B0_1010110;
  49. var_dump($binary);
  50. /* Overflow to infinity */
  51. $binary = 0B111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111;
  52. var_dump($binary);
  53. ?>
  54. --EXPECT--
  55. int(2147483647)
  56. int(2147483647)
  57. float(1.9119287772983036E+25)
  58. int(86)
  59. int(86)
  60. int(86)
  61. int(86)
  62. float(INF)
  63. int(2147483647)
  64. int(2147483647)
  65. float(1.9119287772983036E+25)
  66. int(86)
  67. int(86)
  68. int(86)
  69. int(86)
  70. float(INF)