3v4l.org

run code in 300+ PHP versions simultaneously
<?php function execute($pageNumber, $pageHeight){ $commands = [ "foo" => ["name" => "foo", "desc" => "Foo Desc"], "fuu" => ["name" => "fuu", "desc" => "Fuu Desc"], "bar" => ["name" => "bar", "desc" => "Bar Desc"], "baa" => ["name" => "baa", "desc" => "Baa Desc"], "blah" => ["name" => "blah", "desc" => "Blah Desc"], "fool" => ["name" => "fool", "desc" => "Fool Desc"], "boof" => ["name" => "boof", "desc" => "boof Desc"], ]; ksort($commands, SORT_NATURAL | SORT_FLAG_CASE); $commands = array_chunk($commands, $pageHeight); $pageNumber = (int) min(count($commands), $pageNumber); printf("PageNumber=%d, CountCommands=%d\n", $pageNumber, count($commands)); foreach($commands[$pageNumber - 1] as $command){ printf("Name=%s, Desc=%s\n", $command["name"], $command["desc"]); } } execute(1, 3); echo "===\n\n"; execute(2, 3); echo "===\n\n"; execute(3, 3);
Output for 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
PageNumber=1, CountCommands=3 Name=baa, Desc=Baa Desc Name=bar, Desc=Bar Desc Name=blah, Desc=Blah Desc === PageNumber=2, CountCommands=3 Name=boof, Desc=boof Desc Name=foo, Desc=Foo Desc Name=fool, Desc=Fool Desc === PageNumber=3, CountCommands=3 Name=fuu, Desc=Fuu Desc
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 PageNumber=1, CountCommands=3 Name=baa, Desc=Baa Desc Name=bar, Desc=Bar Desc Name=blah, Desc=Blah Desc === PageNumber=2, CountCommands=3 Name=boof, Desc=boof Desc Name=foo, Desc=Foo Desc Name=fool, Desc=Fool Desc === PageNumber=3, CountCommands=3 Name=fuu, Desc=Fuu Desc

preferences:
215.23 ms | 402 KiB | 291 Q