$array=array("1","2","3","4","5","6", "7","8","9","10","11","12","13","14","15","16","17","18","19 ","20");//Specifies the array to be paged
$page= $_GET['page'];
$r = $this->page($array,5,$page);
print_r($r);
exit();
foreach($r["source"] as $s){
echo $s;
}
function page($array,$pagesize,$current){
$_return=array();
$total=ceil(Count($array)/$pagesize);//Ask Total number of pages
$prev=(($current-1)<=0 ? "1":($current-1));//Confirm the previous page, if the current page is the first page, click to display First page
$next=(($current+1)>=$total ? $total:$current+1);//Confirm the next page. If the current page is the last page, click the next page to display Last page
$current=($current>($total)?($total):$current);//If the current page is greater than the total number of pages, the current page is the last page
$start=( $current-1)*$pagesize;//When displaying in pages, how many pieces of information should be read from
for($i=$start;$i<($start+$pagesize);$i++) {
array_push($_return,$array[$i]);//Put the displayed information into the array $_return
}
$pagearray["source"]=$_return;
$pagearray["page"]="first prev a> next end";//pagination style You can adjust it as needed
return $pagearray;
}
$listArr = array_slice($array, ($page-1)*$pagesize, $pagesize, true);
$page is the number of pages
It is not recommended to use php paging because the data is complete. If you want to paginate for the purpose of optimizing the display effect, you can use js. Because page jumps require visitors to wait for a long time, this is not recommended.
Usual paging is to paginate the database content. For example, 100 items need to be displayed, but only 10 items are displayed at a time. One of the reasons is that the display is faster, and the other main reason is to reduce the pressure on the database side.
You can simply put them in multiple divs and control the display and hiding of the divs through the previous page and the next page.