PHP 分页函数

如果如下:

代码:

/* 分页函数
	 * @$record_num 总记录数
	 * @page_size 每页数量
	 * @cur_page 当前页数
	 * @show_page_num 显示页码数量
	 * @url 链接
	 * @return 分页html
	 * */
	function _page($record_num,$page_size,$cur_page,$url,$show_page_num=9){

		if($record_num <= $page_size){ return ''; }
		if($page_size <= 0){ return ''; }
		if($show_page_num < 3){ $show_page_num = 9; }

		$page_num = ceil($record_num/$page_size);

		$html = '
			<div id="next_p">
            	<div class="pages" >';

		$html .= ($cur_page > 1) ?
				'<li class="prepage"><a class="prev" href="'.$url.'&page='.($cur_page-1).'"> < 上一页</a></li>' :
				'<li class="prepage"><a class="prev" href="javascript:void(0)"> < 上一页</a></li>';

		if($page_num > $show_page_num){
			if($cur_page < ($show_page_num-1) ){
				for($i=1;$i<= ($show_page_num-1); $i++){
					$html .= ($cur_page == $i) ?
							'<li><strong>'.$i.'</strong></li>' :
							'<li><a href="'.$url.'&page='.$i.'">'.$i.'</a></li>' ;
				}
				$html .= '<li style="border:none;font-weight:bold;padding-top:8px; color:#999;">...</li>';
				$html .= '<li><a href="'.$url.'&page='.$page_num.'">'.$page_num.'</a></li>';
			}else if( $cur_page >= ($show_page_num-1) && $cur_page < ($page_num - $show_page_num -1) ){
				$html .= '<li><a href="'.$url.'&page=1">1</a></li>';
				$html .= '<li style="border:none;font-weight:bold;padding-top:8px; color:#999;">...</li>';
				for($i=($cur_page-3);$i<$cur_page;$i++ ){
					$html .= '<li><a href="'.$url.'&page='.$i.'">'.$i.'</a></li>';
				}
				$html .= '<li><strong>'.$cur_page.'</strong></li>';
				for($i=$cur_page+1;$i<$cur_page+4;$i++ ){
					$html .= '<li><a href="'.$url.'&page='.$i.'">'.$i.'</a></li>';
				}
				$html .= '<li style="border:none;font-weight:bold;padding-top:8px; color:#999;">...</li>';
				$html .= '<li><a href="'.$url.'&page='.$page_num.'">'.$page_num.'</a></li>';
			}else{
				$html .= '<li><a href="'.$url.'&page=1">1</a></li>';
				$html .= '<li style="border:none;font-weight:bold;padding-top:8px; color:#999;">...</li>';
				for($i=($page_num - $show_page_num -1);$i<= $page_num; $i++){
					$html .= ($cur_page == $i) ?
							'<li><strong>'.$i.'</strong></li>' :
							'<li><a href="'.$url.'&page='.$i.'">'.$i.'</a></li>' ;
				}
			}
		}else{
			for($i = 1; $i < $page_num; $i++){
				$html .= ($cur_page == $i) ?
						'<li><strong>'.$i.'</strong></li>' :
						'<li><a href="'.$url.'&page='.$i.'">'.$i.'</a></li>' ;
			}
		}

		$html .= ($cur_page < $page_num) ?
				'<li class="nextpageg_g"><a class="next" href="'.$url.'&page='.($cur_page+1).'"> 下一页 > </a></li>' :
				'<li class="nextpageg_g"><a class="next" href="javascript:void(0)"> 下一页 > </a></li>' ;

		$html .= '
			  		<div class="clear"></div>
          		</div>
    		 </div>';

		return $html;
	}
原文地址:https://www.cnblogs.com/pandang/p/5505450.html