找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 831|回复: 0
打印 上一主题 下一主题

PHP实现仿Google分页效果的分页函数

[复制链接]

2500

主题

2513

帖子

7520

积分

论坛元老

Rank: 8Rank: 8

积分
7520
跳转到指定楼层
楼主
发表于 2018-2-14 05:43:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了PHP实现仿Google分页效果的分页函数。分享给大家供大家参考。具体如下:
/**
* 分页函数
* @param int $total  总页数
* @param int $pagesize 每页几条
* @param string $pkey url中页面变量名称
* @param string $url  基础url,其中的{page}会被替换为页码
* 依赖函数 request_uri httpInt
*/
function page($total,$pagesize=10,$pkey='p',$url=null){
  $a_num=10;
  $first=' 首页 ';
  $last=' 尾页 ';
  $pre=' 上页 ';
  $next=' 下页 ';
  $a_num=$a_num%2==0?$a_num+1a_num;
  if(!$url){
    $url=preg_replace("/&?{$pkey}=[^&]{0,}/", '',request_uri());
    $url=strpos($url, '?')===FALSE?$url.'?'.$pkey.'={page}'url.'&'.$pkey.'={page}';
  }
  $pages=ceil($total/$pagesize);
  $curpage=httpInt($pkey,false,1);
  $curpage=$curpage>$pages||$curpage$pages?$pagesend;//结束页超范围修正
  if($pages>=$a_num){//总页数大于显示页数
    if($curpage转到';
  return $prefix.$body.$subfix.$info.$go;
}
/**
* 说明:获取 _SERVER['REQUEST_URI'] 值的通用解决方案
*/
function request_uri()
{
  if (isset($_SERVER['REQUEST_URI']))
  {
    $uri = $_SERVER['REQUEST_URI'];
  }
  else
  {
    if (isset($_SERVER['argv']))
    {
      $uri = $_SERVER['PHP_SELF'] .'?'. $_SERVER['argv'][0];
    }
    else
    {
      $uri = $_SERVER['PHP_SELF'] .'?'. $_SERVER['QUERY_STRING'];
    }
  }
  return $uri;
}
/**
* 获取HTTP传递的整数
* @param string $key 参数名称
* @param bool $ispost 采取POST传递方式,默认为真http://blog.ddian.cn
* @return 整数,非法时默认为 $default
*/
function httpInt($key, $ispost=true,$default=0) {
   if ($ispost) {
     if (isset($_POST[$key])) {
       if (empty($_POST[$key])) {
         return $default;
       } else {
         $val = trim($_POST[$key]);
         if (preg_match("/^\-?\d+$/", $val)) return intval($val);
         else return $default;
       }
     } else {
       return $default;
     }
   } else {
     if (isset($_GET[$key])) {
       if (empty($_GET[$key])) {
         return $default;
       } else {
         $val = trim($_GET[$key]);
         if (preg_match("/^\-?\d+$/", $val)) {
           return intval($val);
         } else {
           return $default;
         }
       }
     } else {
       return $default;
     }
   }
}
希望本文所述对大家的php程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • php jquery 实现新闻标签分类与无刷新分页
  • FCKEditor+jQuery+PHP实现分页代码
  • 使用PHP+JQuery+Ajax分页的实现
  • 推荐一款PHP+jQuery制作的列表分页的功能模块
  • ThinkPHP分页实例
  • 仿dedecms下拉分页样式修改的thinkphp分页类实例
  • ThinkPHP有变量的where条件分页实例
  • PHP分页类集锦
  • php 使用array函数实现分页
  • php简单分页类实现方法
  • PHP读取txt文本文件并分页显示的方法
  • 分享php分页的功能模块
  • PHP实现简单数字分页效果
  • 分享PHP函数实现数字与文字分页代码
  • jQuery+Ajax+PHP+Mysql实现分页显示数据实例讲解
  • PHP+jQuery+Ajax实现分页效果 jPaginate插件的应用
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端