サービス側でのページ表示ページの解決

828 ワード

function getAutoPageArray($page,$pagelen){
	$pagecode = "";
	//      
	$init = 1;
	$max = $page->totalPage;
	$pagelen = ($pagelen%2)?$pagelen:$pagelen+1;//    
	$pageoffset = ($pagelen-1)/2;//         

	//  html
	//              
	if($page->totalPage > $pagelen)
	{
		//            
		if($page->currentPage<=$pageoffset)
		{
			$init=1;
			$max=$pagelen;
		}
		else
		{
			//          
			//                
			if($page->currentPage+$pageoffset>=$page->totalPage+1)
			{
				$init = $page->totalPage-$pagelen+1;
			}
			else
			{
				//           
				$init = $page->currentPage-$pageoffset;
				$max = $page->currentPage+$pageoffset;

			}
		}
	}


	$array = array();
	for($i=$init;$i<=$max;$i++){
		$array[] = sprintf("%d",$i);
	}

	return $array;
}