3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $input = <<<EOL turn off 660,55 through 986,197 turn off 341,304 through 638,850 turn off 199,133 through 461,193 toggle 322,558 through 977,958 toggle 537,781 through 687,941 turn on 226,196 through 599,390 turn on 240,129 through 703,297 turn on 317,329 through 451,798 turn on 957,736 through 977,890 turn on 263,530 through 559,664 turn on 158,270 through 243,802 toggle 223,39 through 454,511 toggle 544,218 through 979,872 turn on 313,306 through 363,621 toggle 173,401 through 496,407 toggle 333,60 through 748,159 turn off 87,577 through 484,608 turn on 809,648 through 826,999 toggle 352,432 through 628,550 turn off 197,408 through 579,569 turn off 1,629 through 802,633 turn off 61,44 through 567,111 toggle 880,25 through 903,973 turn on 347,123 through 864,746 toggle 728,877 through 996,975 turn on 121,895 through 349,906 turn on 888,547 through 931,628 toggle 398,782 through 834,882 turn on 966,850 through 989,953 turn off 891,543 through 914,991 toggle 908,77 through 916,117 turn on 576,900 through 943,934 turn off 580,170 through 963,206 turn on 184,638 through 192,944 toggle 940,147 through 978,730 turn off 854,56 through 965,591 toggle 717,172 through 947,995 toggle 426,987 through 705,998 turn on 987,157 through 992,278 toggle 995,774 through 997,784 turn off 796,96 through 845,182 turn off 451,87 through 711,655 turn off 380,93 through 968,676 turn on 263,468 through 343,534 turn on 917,936 through 928,959 toggle 478,7 through 573,148 turn off 428,339 through 603,624 turn off 400,880 through 914,953 toggle 679,428 through 752,779 turn off 697,981 through 709,986 toggle 482,566 through 505,725 turn off 956,368 through 993,516 toggle 735,823 through 783,883 turn off 48,487 through 892,496 turn off 116,680 through 564,819 turn on 633,865 through 729,930 turn off 314,618 through 571,922 toggle 138,166 through 936,266 turn on 444,732 through 664,960 turn off 109,337 through 972,497 turn off 51,432 through 77,996 turn off 259,297 through 366,744 toggle 801,130 through 917,544 toggle 767,982 through 847,996 turn on 216,507 through 863,885 turn off 61,441 through 465,731 turn on 849,970 through 944,987 toggle 845,76 through 852,951 toggle 732,615 through 851,936 toggle 251,128 through 454,778 turn on 324,429 through 352,539 toggle 52,450 through 932,863 turn off 449,379 through 789,490 turn on 317,319 through 936,449 toggle 887,670 through 957,838 toggle 671,613 through 856,664 turn off 186,648 through 985,991 turn off 471,689 through 731,717 toggle 91,331 through 750,758 toggle 201,73 through 956,524 toggle 82,614 through 520,686 toggle 84,287 through 467,734 turn off 132,367 through 208,838 toggle 558,684 through 663,920 turn on 237,952 through 265,997 turn on 694,713 through 714,754 turn on 632,523 through 862,827 turn on 918,780 through 948,916 turn on 349,586 through 663,976 toggle 231,29 through 257,589 toggle 886,428 through 902,993 turn on 106,353 through 236,374 turn on 734,577 through 759,684 turn off 347,843 through 696,912 turn on 286,699 through 964,883 turn on 605,875 through 960,987 turn off 328,286 through 869,461 turn off 472,569 through 980,848 toggle 673,573 through 702,884 turn off 398,284 through 738,332 turn on 158,50 through 284,411 turn off 390,284 through 585,663 turn on 156,579 through 646,581 turn on 875,493 through 989,980 toggle 486,391 through 924,539 turn on 236,722 through 272,964 toggle 228,282 through 470,581 toggle 584,389 through 750,761 turn off 899,516 through 900,925 turn on 105,229 through 822,846 turn off 253,77 through 371,877 turn on 826,987 through 906,992 turn off 13,152 through 615,931 turn on 835,320 through 942,399 turn on 463,504 through 536,720 toggle 746,942 through 786,998 turn off 867,333 through 965,403 turn on 591,477 through 743,692 turn off 403,437 through 508,908 turn on 26,723 through 368,814 turn on 409,485 through 799,809 turn on 115,630 through 704,705 turn off 228,183 through 317,220 toggle 300,649 through 382,842 turn off 495,365 through 745,562 turn on 698,346 through 744,873 turn on 822,932 through 951,934 toggle 805,30 through 925,421 toggle 441,152 through 653,274 toggle 160,81 through 257,587 turn off 350,781 through 532,917 toggle 40,583 through 348,636 turn on 280,306 through 483,395 toggle 392,936 through 880,955 toggle 496,591 through 851,934 turn off 780,887 through 946,994 turn off 205,735 through 281,863 toggle 100,876 through 937,915 turn on 392,393 through 702,878 turn on 956,374 through 976,636 toggle 478,262 through 894,775 turn off 279,65 through 451,677 turn on 397,541 through 809,847 turn on 444,291 through 451,586 toggle 721,408 through 861,598 turn on 275,365 through 609,382 turn on 736,24 through 839,72 turn off 86,492 through 582,712 turn on 676,676 through 709,703 turn off 105,710 through 374,817 toggle 328,748 through 845,757 toggle 335,79 through 394,326 toggle 193,157 through 633,885 turn on 227,48 through 769,743 toggle 148,333 through 614,568 toggle 22,30 through 436,263 toggle 547,447 through 688,969 toggle 576,621 through 987,740 turn on 711,334 through 799,515 turn on 541,448 through 654,951 toggle 792,199 through 798,990 turn on 89,956 through 609,960 toggle 724,433 through 929,630 toggle 144,895 through 201,916 toggle 226,730 through 632,871 turn off 760,819 through 828,974 toggle 887,180 through 940,310 toggle 222,327 through 805,590 turn off 630,824 through 885,963 turn on 940,740 through 954,946 turn on 193,373 through 779,515 toggle 304,955 through 469,975 turn off 405,480 through 546,960 turn on 662,123 through 690,669 turn off 615,238 through 750,714 turn on 423,220 through 930,353 turn on 329,769 through 358,970 toggle 590,151 through 704,722 turn off 884,539 through 894,671 toggle 449,241 through 984,549 toggle 449,260 through 496,464 turn off 306,448 through 602,924 turn on 286,805 through 555,901 toggle 722,177 through 922,298 toggle 491,554 through 723,753 turn on 80,849 through 174,996 turn off 296,561 through 530,856 toggle 653,10 through 972,284 toggle 529,236 through 672,614 toggle 791,598 through 989,695 turn on 19,45 through 575,757 toggle 111,55 through 880,871 turn off 197,897 through 943,982 turn on 912,336 through 977,605 toggle 101,221 through 537,450 turn on 101,104 through 969,447 toggle 71,527 through 587,717 toggle 336,445 through 593,889 toggle 214,179 through 575,699 turn on 86,313 through 96,674 toggle 566,427 through 906,888 turn off 641,597 through 850,845 turn on 606,524 through 883,704 turn on 835,775 through 867,887 toggle 547,301 through 897,515 toggle 289,930 through 413,979 turn on 361,122 through 457,226 turn on 162,187 through 374,746 turn on 348,461 through 454,675 turn off 966,532 through 985,537 turn on 172,354 through 630,606 turn off 501,880 through 680,993 turn off 8,70 through 566,592 toggle 433,73 through 690,651 toggle 840,798 through 902,971 toggle 822,204 through 893,760 turn off 453,496 through 649,795 turn off 969,549 through 990,942 turn off 789,28 through 930,267 toggle 880,98 through 932,434 toggle 568,674 through 669,753 turn on 686,228 through 903,271 turn on 263,995 through 478,999 toggle 534,675 through 687,955 turn off 342,434 through 592,986 toggle 404,768 through 677,867 toggle 126,723 through 978,987 toggle 749,675 through 978,959 turn off 445,330 through 446,885 turn off 463,205 through 924,815 turn off 417,430 through 915,472 turn on 544,990 through 912,999 turn off 201,255 through 834,789 turn off 261,142 through 537,862 turn off 562,934 through 832,984 turn off 459,978 through 691,980 turn off 73,911 through 971,972 turn on 560,448 through 723,810 turn on 204,630 through 217,854 turn off 91,259 through 611,607 turn on 877,32 through 978,815 turn off 950,438 through 974,746 toggle 426,30 through 609,917 toggle 696,37 through 859,201 toggle 242,417 through 682,572 turn off 388,401 through 979,528 turn off 79,345 through 848,685 turn off 98,91 through 800,434 toggle 650,700 through 972,843 turn off 530,450 through 538,926 turn on 428,559 through 962,909 turn on 78,138 through 92,940 toggle 194,117 through 867,157 toggle 785,355 through 860,617 turn off 379,441 through 935,708 turn off 605,133 through 644,911 toggle 10,963 through 484,975 turn off 359,988 through 525,991 turn off 509,138 through 787,411 toggle 556,467 through 562,773 turn on 119,486 through 246,900 turn on 445,561 through 794,673 turn off 598,681 through 978,921 turn off 974,230 through 995,641 turn off 760,75 through 800,275 toggle 441,215 through 528,680 turn off 701,636 through 928,877 turn on 165,753 through 202,780 toggle 501,412 through 998,516 toggle 161,105 through 657,395 turn on 113,340 through 472,972 toggle 384,994 through 663,999 turn on 969,994 through 983,997 turn on 519,600 through 750,615 turn off 363,899 through 948,935 turn on 271,845 through 454,882 turn off 376,528 through 779,640 toggle 767,98 through 854,853 toggle 107,322 through 378,688 turn off 235,899 through 818,932 turn on 445,611 through 532,705 toggle 629,387 through 814,577 toggle 112,414 through 387,421 toggle 319,184 through 382,203 turn on 627,796 through 973,940 toggle 602,45 through 763,151 turn off 441,375 through 974,545 toggle 871,952 through 989,998 turn on 717,272 through 850,817 toggle 475,711 through 921,882 toggle 66,191 through 757,481 turn off 50,197 through 733,656 toggle 83,575 through 915,728 turn on 777,812 through 837,912 turn on 20,984 through 571,994 turn off 446,432 through 458,648 turn on 715,871 through 722,890 toggle 424,675 through 740,862 toggle 580,592 through 671,900 toggle 296,687 through 906,775 EOL; $grid = []; for ($x = 0; $x < 1000; $x++) { $grid[$x] = []; for ($y = 0; $y < 1000; $y++) { $grid[$x][$y] = 0; } } $commands = explode("\r\n", $input); foreach ($commands as $raw) { $command = str_replace("through ", "", str_replace("turn ", "", $raw)); list($action, $from, $to) = explode(" ", $command); $from = explode(",", $from); $to = explode(",", $to); for ($x = $from[0]; $x <= $to[0]; $x++) { for ($y = $from[1]; $y <= $to[1]; $y++) { switch($action) { case "on": $grid[$x][$y] = true; break; case "off": $grid[$x][$y] = false; break; case "toggle": $grid[$x][$y] = !$grid[$x][$y]; break; } } } } $i = 0; foreach ($grid as $line) { foreach ($line as $light) { if($light) { $i++; } } } echo $i;
Output for 7.0.0 - 7.1.7, 7.2.0
0
Output for 7.1.10

Process exited with code 137.
Output for 5.4.10 - 5.6.28
Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 72 bytes) in /in/6Y5QO on line 310
Process exited with code 255.
Output for 5.3.20 - 5.3.29
Parse error: syntax error, unexpected '[' in /in/6Y5QO on line 306
Process exited with code 255.