thinkphp中对数组元素进行分页显示
来源:互联网 发布:php empty和isset 编辑:程序博客网 时间:2024/05/16 01:57
PHP模块代码:class NewsAction extends Action{public $page = ''; //分页,当前页数 function News(){ $list = M("News")->field('id,title')->where("status = 5")->findAll(); //分页 $list = $this->array_page($list); //结束 $num = 0; $URL = "http://www.baidu.com/"; $suffixName = '.html'; foreach($list as $key=>$val){ $num = $key + 1; $str .= ' '.$num.").<a href='".$URL.$val['id'].$suffixName."' target='_blank'>".$val['title']."</a><br> "; } $str = preg_replace('/(.*),\s$/','\\1',$str); $str .= "<div class='d_page'>".$this->page."</div>"; return $str; } //数组分页方法 /** * array $array 数组 * integer $showCount 每页的记录数 *------------------------------ * return array 返回数组 */ function array_page($array,$listRows = 12,$showCount = 4){ $p = C('VAR_PAGE'); $url = $_SERVER['REQUEST_URI']."/".$p."/"; $page = !empty($_GET[C('VAR_PAGE')])?$_GET[C('VAR_PAGE')]:1; $upRow = $page-1; $downRow = $page+1; $linkPage = ""; $totalPage = (int)count($array); $pagetotal = ceil($totalPage/$listRows); //总页数 if($page <= ceil(($showCount)/2)){ $minpg = 1; $maxpg = $showCount+1; if($maxpg >= $pagetotal) $maxpg = $pagetotal + 1; }elseif($page > ceil(($showCount)/2) && $page < ($pagetotal - ceil($showCount/2))){ $minpg = $page - ceil(($showCount)/2) + 1; $maxpg = $page + ceil(($showCount)/2) + 1; if($maxpg >= $pagetotal) $maxpg = $pagetotal; }elseif($page >=$pagetotal - ceil(($showCount)/2)){ $minpg = $pagetotal - ($showCount-1); if($minpg == 1) $minpg = 2; $maxpg = $pagetotal + 1; } $linkPage .= " ".$totalPage." 条记录 ".$page."/".$pagetotal." 页 "; if($pagetotal == 1){ $linkPage .= " <span class='current'>1</span> "; }else{ if($page > 1){ $linkPage .= " <a href='javascript:void(0)' onClick=\"showpage('".$url."1');\">第一页</a>"; $linkPage .= " <a href='javascript:void(0)' onClick=\"showpage('".$url.$upRow."');\">上一页</a>"; } for($i = $minpg; $i < $maxpg; $i++){ if($page == $i){ $linkPage .= " <span class='current'><font color=\"#FF0000\">". $i ."</font></span>"; }else{ $linkPage .= " <a href='javascript:void(0)' onClick=\"showpage('".$url.$i."');\">$i</a>"; } } if($page < $pagetotal){ $linkPage .= " <a href='javascript:void(0)' onClick=\"showpage('".$url.$downRow."');\">下一页</a>"; $linkPage .= " <a href='javascript:void(0)' onClick=\"showpage('".$url.$pagetotal."');\">最后一页</a>"; } } if($listRows < $totalPage) { if($page <= 1 || empty($page)) { $page = 0; } else { $page = intval($page) - 1; } $array = array_slice($array,$page*$listRows,$listRows,true); } $this->page = $linkPage; if(1 == $pagetotal) $this->page = ''; return $array; } } 前台Html代码:<html><head><script type="text/javascript" charset="utf-8" src="__PUBLIC__/js/artDialog/artDialog.min.js"></script></head><body><script language="javascript" type="text/javascript">//分页跳转function showpage(url){ var testDialog; testDialog = dialog('正在加载中...'); $.get(url,null,function(data){ //$("#con").append(data); testDialog.close(); $("#con").html(data); });}//提示缓冲框function dialog(msg){ var testDialog; testDialog = art.dialog({ lock: false, title:'', id:'loaddialog', content:'<font color="#ff0000">'+msg+'</font>', width:220 }); return testDialog;}</script><div id="con"></div></body></html>
- thinkphp中对数组元素进行分页显示
- 对List数组进行分页显示
- MongoDB中对数组元素进行查询
- ThinkPHP 对数据库的数据进行分页
- javascript对数组进行分页
- 如何在WinForm中对DataGrid进行分页显示
- 如何在WinForm中对DataGrid进行分页显示
- vb.net中对Repeater控件进行分页显示
- 如何在WinForm中对DataGrid进行分页显示收藏
- 对数据进行分页,显示到table中。
- 对数据进行分页,显示到table中
- java中对list进行分页显示数据到页面
- iOS开发中对数组元素进行排序
- JavaScript之对数组中元素进行增删改
- 使用API文档对数组中元素进行升序排列
- thinkphp前台模板中对值进行判断,再显示相应的文字
- PHP中对数组进行分页处理的原理及分页实例
- thinkphp-根据关键字查询并进行分页显示
- thinkphp检查上传文件时是否已存在
- Linux设备驱动子系统第二弹 - SD卡
- 百度地图 - 合并模拟器和真机的静态库文件
- Android之Fragment实现界面交互小实例2
- thinkphp中判断远程及非远程文件是否存在
- thinkphp中对数组元素进行分页显示
- thinkphp清空所有目录(包括子目录)
- IT外企那点儿事(1~12)
- Thinkphp二级网站地图XML生成的方法[图解]
- POJ 1426 Find The Multiple
- 解决关于php中文文件下载问题
- mysql数据库的各种实用语句[收藏版]
- THinkPHP中文件下载
- PHP中SESSION不能跨页传递问题的解决办法