PHP简单分页函数代码总结
在我做过这么多的php开发了我发现两种分页类型,一种分页是直接把数据库连接与分页连接在了一起,另外一种分页函数只有分页的逻辑判断并没有数据库的参与了,后者更好维护与重复使用一些,前者维护麻烦不好重复利用,下面我都给大家整理几个例子.
例子一,这个分页函数就有连接数据库再查看,代码不详细解说了,注释里有:
<?php //page当前页,num每页的页数 $page =isset( $_GET [ 'page' ])? intval ( $_GET [ 'page' ]):1; $num =5; $conn = mysql_connect( '127.0.0.1' , 'root' , '' ); if (! $conn ) { die ( 'Could not connect:' .mysql_error()); } mysql_select_db( 'shop' ); //获取记录总数 $total =mysql_num_rows(mysql_query( "select * from user" )); //计算页数 $pagenum = ceil ( $total / $num ); //限制页数不能超出范围 If( $page > $pagenum || $page == 0){ Echo 'Error : Can Not Found The page.' ; Exit ; } //语句[Select * from table limit 0,10]从table表提取十条信息,0为起点,10为提取的数目 //$offset为起点值,如当前页为第一页,每页5条,起点即为0,同理当前为第二页,起点将为5 $offset =( $page -1)* $num ; $result =mysql_query( "select * from user limit $offset,$num" ); while ( $it =mysql_fetch_array( $result )){ echo 'id:' . $it [ 'id' ]. ' name:' . $it [ 'name' ]. '<br />' ; } //显示链接页面切换链接,当前页无链接 for ( $i =1; $i <= $pagenum ; $i ++){ $show =( $i != $page )? "<a href='index.php?page=" . $i . "'>$i</a>" : "<b>$i</b>" ; echo $show . " " ; } echo $total . '条记录,每页5条,共' . $pagenum . '页' ; mysql_free_result( $result ); mysql_close( $conn ); ?>例子二,直接的把分页代码逻辑提出来,重复利用比较好,代码如下:
<?php /* #函数:csPage #功能:返回页面列表 */ Function csPage( $iPage , $aPage , $urlStart , $urlEnd ){ $tmp = "" ; if ( $iPage == 1 && $aPage == 1){ $tmp = "<strong> 1/1 </strong>" ; } else { if ( $iPage == 1){ $tmp = "<span> |< </span><span> << </span>" ; } else { $tmp = '<a title="首页" href="' . $UrlStart . 1 . $urlEnd . '"> |< </a><a title="上一页" href="' . $UrlStart . ( $iPage -1) . $urlEnd . '"> << </a>' ; } $tmp .= "<strong> " . $iPage . "/" . $aPage . " </strong>" ; if ( $iPage == $aPage ){ $tmp .= '<span> >> </span><span> >| </span>' ; } else { $tmp .= '<a title="下一页" href="' . $urlStart . ( $iPage +1) . $urlEnd . ' "> >> </a><a title="尾页" href="' . $urlStart . $aPage . $urlEnd . '"> >| </a>' ; } } return $tmp ; } ?>总结一下:如果让我们选择可能我会选择第二种方法这样维护好实现方法简单,第一种分页适合初学者合适简单但维护复杂.
查看更多关于PHP简单分页函数代码总结 - php分页的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did27939