#$myarray = null; // create a data object that has the interface needed by the Pager object $datasource = new A_Pager_Array($myarray); $datasource->orderBy('text'); } // create pager using values from datasource and request params $pager = new A_Pager($datasource); $pager->setPageSize(25); // change from default of 10 of you want $pager->setOrderByFields(array('id', 'text', 'sort'), 'text'); // allowed orderby fields and starting sort // create a request processor to set pager from GET parameters #$request = new PagerRequest($pager); $request = new A_Pager_Request_Session($pager); $request->process(); if ($pager->hasPages()) { // create a HTML writer to output $writer = new A_Pager_HTMLWriter($pager); // get rows of data $start_row = $pager->getStartRow(); $end_row = $pager->getEndRow(); $rows = $datasource->getRows($start_row, $end_row); // display the data echo '<table border="1">'; echo '<tr>'; echo '<td> </td>'; echo '<td>' . $writer->getOrderByLink('id', 'Key') . '</td>'; echo '<td>' . $writer->getOrderByLink('text', 'Text') . '</td>'; echo '<td>' . $writer->getOrderByLink('sort', 'Sort') . '</td>'; echo '<td> </td>'; echo '</tr>';