Rumah > php教程 > PHP源码 > php分页函数应用及实现原理详解

php分页函数应用及实现原理详解

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-06-08 17:25:05
asal
3447 orang telah melayarinya

一篇关于php分页函数应用及实现原理详解,有需要的同学可以参考一下。

<script>ec(2);</script>

第13课老师提供的分页函数,我进行了适当的修改,去掉了一些我不太好理解的地方。
        只要你好好研究老师的函数,想必很容易就可以判断出我修改的地方。
        如果你觉得我修改有什么不当的地方欢迎指证,交流可以促使你我进步!
    -变量
       1.局部变量
       2.全局变量(global,$GLOBALS)

       a.在函数外定义的局部变量,只可以在主程序使用,不可在函数内或其他文件使用
       b.在函数内定义的局部变量,只可在本函数内使用
       c.在函数外定义的局部变量,想要在函数内使用,必须在函数内将变量声明为global
          
       d.在函数内定义的局部变量,想要在函数外使用,必须在函数内将变量声明为global
          
           注意:
          1.必须先将变量声明为global,然后才赋值
             错误: global $color="red";
             正确: global $color;$color="red";
           2.必须先声明,再使用
             错误:echo $color;global $color;
             正确:global $color;echo $color;
        f.函数的参数为局部变量,如果想要在外部使用,不能使用global这种方式(因为不符合先声明,再使用的原则)
          则使用超全局变量 $GLOBALS(大写,小写有不确定性)
          

 

 

 代码如下 复制代码

    //$totle为总条数,$displaypg为每页显示的条数
 function PAGEFT($totle, $displaypg = 20) {
  global $firstcount, $pagenav;
  $GLOBALS["displaypg"] = $displaypg;
  //取得当前页数
  if($_GET['page'])
     $page=$_GET['page'];
  else $page = 1;

  //取得当前页的地址
  $url_arr=parse_url($_SERVER["REQUEST_URI"]);
  $url=$url_arr['path'];

  $lastpg = ceil($totle / $displaypg); //最后页
  $page = min($lastpg, $page);        //当前页
  $prepg = $page -1;                 //上一页
  $nextpg = ($page == $lastpg ? 0 : $page +1); //下一页
  $firstcount = ($page -1) * $displaypg;      //开始位置

  //开始分页导航条代码:
  $start=$totle ? ($firstcount +1) : 0;
  $end=min($firstcount + $displaypg, $totle);
  if($start!=$end)
   $pagenav = "显示第 " . $start . "-".$end. " 条记录,共 $totle 条记录";
  else
   $pagenav = "显示第 ".$end." 条记录,共 $totle 条记录";

  //如果只有一页则跳出函数:
  if ($lastpg    return TRUE;
  $pagenav .= " 首页 ";
  if ($prepg)
   $pagenav .= " 前页 ";
  else
   $pagenav .= " 前页 ";
  if ($nextpg)
   $pagenav .= " 后页 ";
  else
   $pagenav .= " 后页 ";
  $pagenav .= " 尾页 ";

  //下拉跳转列表,循环列出所有页码:
  $pagenav .= " 到第 页,共 $lastpg 页";
 }
/////////////////////////////////////往下是操作分页函数的部分////////////////////////////////////////////////
include_once('conn.php');
$result=mysql_query("SELECT * FROM `news`");
$total=mysql_num_rows($result);
PAGEFT($total,3);    //调用分页函数

$result=mysql_query("SELECT * FROM `news` limit $firstcount,$displaypg ");
while($row=mysql_fetch_array($result)){
echo "


".$row['title']." | ".$row['content'];
}
echo "
".$pagenav;

?>

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Cadangan popular
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan