123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- --TEST--
- Bug #41121 (range() overflow handling for large numbers on 32bit machines)
- --INI--
- precision=14
- --SKIPIF--
- <?php if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only"); ?>
- --FILE--
- <?php
- // posotive steps
- var_dump(range(2147483400, 2147483600, 100));
- var_dump( range(2147483646, 2147483648, 1 ) );
- var_dump( range(2147483646, 2147483657, 1 ) );
- var_dump( range(2147483630, 2147483646, 5 ) );
- // negative steps
- var_dump( range(-2147483645, -2147483648, 1 ) );
- var_dump( range(-2147483645, -2147483649, 1 ) );
- var_dump( range(-2147483630, -2147483646, 5 ) );
- // low > high
- var_dump(range(2147483647, 2147483645, 1 ));
- var_dump(range(2147483648, 2147483645, 1 ));
- ?>
- --EXPECT--
- array(3) {
- [0]=>
- int(2147483400)
- [1]=>
- int(2147483500)
- [2]=>
- int(2147483600)
- }
- array(3) {
- [0]=>
- float(2147483646)
- [1]=>
- float(2147483647)
- [2]=>
- float(2147483648)
- }
- array(12) {
- [0]=>
- float(2147483646)
- [1]=>
- float(2147483647)
- [2]=>
- float(2147483648)
- [3]=>
- float(2147483649)
- [4]=>
- float(2147483650)
- [5]=>
- float(2147483651)
- [6]=>
- float(2147483652)
- [7]=>
- float(2147483653)
- [8]=>
- float(2147483654)
- [9]=>
- float(2147483655)
- [10]=>
- float(2147483656)
- [11]=>
- float(2147483657)
- }
- array(4) {
- [0]=>
- int(2147483630)
- [1]=>
- int(2147483635)
- [2]=>
- int(2147483640)
- [3]=>
- int(2147483645)
- }
- array(4) {
- [0]=>
- float(-2147483645)
- [1]=>
- float(-2147483646)
- [2]=>
- float(-2147483647)
- [3]=>
- float(-2147483648)
- }
- array(5) {
- [0]=>
- float(-2147483645)
- [1]=>
- float(-2147483646)
- [2]=>
- float(-2147483647)
- [3]=>
- float(-2147483648)
- [4]=>
- float(-2147483649)
- }
- array(4) {
- [0]=>
- int(-2147483630)
- [1]=>
- int(-2147483635)
- [2]=>
- int(-2147483640)
- [3]=>
- int(-2147483645)
- }
- array(3) {
- [0]=>
- int(2147483647)
- [1]=>
- int(2147483646)
- [2]=>
- int(2147483645)
- }
- array(4) {
- [0]=>
- float(2147483648)
- [1]=>
- float(2147483647)
- [2]=>
- float(2147483646)
- [3]=>
- float(2147483645)
- }
|