<?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.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
- 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:
141.53 ms | 409 KiB | 5 Q