// Define inline keyboard pagination.
$ikp = new InlineKeyboardPagination($items, $command);
$ikp->setMaxButtons(7, true); // Second parameter set to always show 7 buttons if possible.
$ikp->setLabels($labels);
$ikp->setCallbackDataFormat($callbackDataFormat);
// Get pagination.
$pagination = $ikp->getPagination($selectedPage);
// or, in 2 steps.
$ikp->setSelectedPage($selectedPage);
$pagination = $ikp->getPagination();
// Use it in your request.
if (!empty($pagination['keyboard'])) {
//$pagination['keyboard'][0]['callback_data']; // command=testCommand&oldPage=10&newPage=1
//$pagination['keyboard'][1]['callback_data']; // command=testCommand&oldPage=10&newPage=7
...
$data['reply_markup'] = [
'inline_keyboard' => [
$pagination['keyboard'],
],
];
...
}
// e.g. Callback data.
$callback_data = 'command=testCommand&oldPage=10&newPage=1';
$params = InlineKeyboardPagination::getParametersFromCallbackData($callbackData);
//$params = [
// 'command' => 'testCommand',
// 'oldPage' => '10',
// 'newPage' => '1',
//];
// or, just use PHP directly if you like. (literally what the helper does!)
parse_str($callbackData, $params);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.