分页处理的PHP类

namespace JasonGrimes;

class Paginator

{

const NUM_PLACEHOLDER = '(:num)';

protected $totalItems;

protected $numPages;

protected $itemsPerPage;

protected $currentPage;

protected $urlPattern;

protected $maxPagesToShow = 10;

protected $previousText = 'Previous';

protected $nextText = 'Next';

/**

* @param int $totalItems The total number of items.

* @param int $itemsPerPage The number of items per page.

* @param int $currentPage The current page number.

* @param string $urlPattern A URL for each page, with (:num) as a placeholder for the page number. Ex. '/foo/page/(:num)'

*/

public function __construct($totalItems, $itemsPerPage, $currentPage, $urlPattern = '')

{

$this->totalItems = $totalItems;

$this->itemsPerPage = $itemsPerPage;

$this->currentPage = $currentPage;

$this->urlPattern = $urlPattern;

$this->updateNumPages();

}

分页 (pagination),即将一个页面分成两个或两个以上的页面。

有一种自动分页机制,可以将移动 Web窗体中的内

容分割成一组组较小的页进行呈现,以适合于特定的设备。该机制还呈现可用于浏览到其他页的用户界面元素。无论你的NT服务器的内存有多大,它总是显得不够充足。当物理RAM从低端开始运行时,Windows NT使用了分页文件Pagefile.sys。为了运行不同的进程和应用程序,Pagefile.sys给物理内存分配了一些空间。在这些空间内允许交换数据页。 显然,系统在文件系统缓存中查找数据而不是在驱动器上搜索数据会提高系统的性能。太多的搜索操作会使处理器停顿下来。这就是短语“买更多的内存”成为计算机时代的陈词滥调的原因之一:RAM是你的朋友。管理内存可使你的“朋友”更高效。

Windows NT下的Windows Task Manager ([Ctrl][Alt][Delete] | Task Manager)是一个可以为访问内存使用情况提供快捷重要信息的察看工具。考虑物理内存的大小并计算MEM Usage计数器的值,Memory Usage History提供了内存活动的即时情况。把CPU Usage计数器和CPU Usage History与MEM Usage计数器一作比较,就可以简单地得到性能的总的评价。如果你必须决定是否要立刻启动 Diskperf以进一步调查分页过多问题那就非常便利了。 Windows NT的分页文件可以通过Control Panel |System | Performance 标签| Virtual Memory进行管理。在这里,你可以控制分页文件的几个设置(包括大小和区域)。显然,你可以允许系统对它进行处理,但是为了获得最佳配置还是使用Vitual Memory Manager (VMM)为好。

Windows NT分页文件的基本原则 Windows NT最初通过在物理RAM的数量上加上12MB以设定开始的分页文件大小。这12MB考虑到在系统故障时分页文件内容可被倾倒到一个日志中以防万一。如果看见了“停止”框和接着出现蓝屏死机,你就在操作中遇上了这个问题。如果开始的分页文件的大小小于这个数(物理RAM的数量上加上12MB),就会开始收到Running Out Of Memory消息。 Windows NT操作系统和其应用程序使用了大约10MB的RAM。所以,应该从物理RAM的数量上减去这个值。这会给你充分的回旋余地决定你的服务器的内存要求。 Windows NT要求分页文件的最小值为2MB。如果分页文件太小或者根本不存在,启动时就会出现警告消息。

应该总是遵循RAM的最小值+12的规则。在任何情况下,分页文件都不能比服务器中的RAM的大小小。如果系统有32 MB的物理RAM,加上12MB后分页文件总的大小就是44MB。显然,分页文件越大越好。意思是增加对物理RAM的投资,而不是简单地增加分页文件的大小。如果没有足够的RAM,驱动器就会花太多的时间对分页文件进行读写。这只会降低服务器的速度,如果不得不重启服务器来清除I/O请求,甚至会导致服务器不能工作。而如果因为这个原因需要重启机器,那么可能就会有第二次。 默认的12MB RAM足以在必要时把分页文件的内容清除。小的分页文件限制了可以存储的内容并且可能耗完为应用程序保留的虚拟内存。如果RAM不足,就会有更多的分页,这反过来为驱动器增加了额外的负担,从而降低了系统的响应速度。在这样的情况下,Windows NT要求分页文件的最小值等于除了系统启动时1MB虚拟内存之外的物理RAM的大小,以便能够把调试信息写到一个文件上。 如前所述,分页文件的最大值和最小值在Virtual Memory对话框中指定。根据应用程序,分页文件会增大和缩小。当系统运行着时,不能压缩或维护分页文件。但是,使用各种第三方软件包如Diskeeper可对分页文件进行维护。

申明:php中文网下载站匠心打造专业的IT资源下载站!一切资源免费,来源网络收集,请自行检测软件的完整性。交流QQ群:916808767

分页的php处理,分页处理的PHP类相关推荐

  1. java实现layui分页_基于LayUI分页和LayUI laypage分页的使用示例

    本文介绍了LayUI分页,LayUI动态分页,LayUI laypage分页,LayUI laypage刷新当前页,分享给大家,具体如下: 效果图: 一.引用js依赖 主要是jquery-1.11. ...

  2. mybatis 分页查询_MyBatis之分页查询:MyBatis PageHelper

    MyBatis,作为目前流行的ORM框架,大大方便了日常开发.而对于分页查询,虽然可以通过SQL的limit语句实现,但是比较繁琐.而MyBatis PageHelper的出现,则解决了这一痛点.这里 ...

  3. php程序里如何实现图片翻页,php图片上传代码一例-php 生成翻页链接(页码)列表的...-带多种分页方式的php分页类_169IT.COM...

    Class PAGE { //类开始 /******************************************************** * $total       记录总数 * $ ...

  4. php dump utfp,php pchart乱码-使用REST接口获取GeoServer中的...-结合 thinkPHP 分页写成自己分页类_169IT.COM...

    本页文章导读: ▪php pchart乱码      有俩种情况:①:未将中文字符编码格式修改成utf-8 (例子如下:)mb_convert_encoding($data, "html-e ...

  5. Diango博客--16.稳定易用的 Django 分页库,完善分页功能(二)

    文章目录 0.思路引导 1.分页效果概述 2.分页思路 3.Django 第三方拓展:django-pure-pagination 4.自定义模板 0.思路引导 1)在前面我们通过 Django Pa ...

  6. php分页技术的作用,分页原理技术细节剖析(php+mysql)实例

    提到分页,大家都不陌生,在我们日常浏览网页时常遇到,尤其新闻文章列表等都有分页,如下图所示: 分页实例 下面,通过一个实例为大家剖析一下分页原理上技术细节. 一.功能开发思路 在分页功能的实现前,先做 ...

  7. java list 内存分页_Java List内存分页

    /** * Description: 内存分页 * * @param records 待分页的数据 * @param pageNum 当前页码 * @param pageSize 每页显示的条数 * ...

  8. oracle 分页_Mybatis:PageHelper分页插件源码及原理剖析

    点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 作者:祖大俊 my.oschina.net/zudajun/blog/745232 Pag ...

  9. css分页实例讲解,CSS 分页实例

    本章节我们将为大家介绍如何通过使用 CSS 来创建分页的实例. 简单分页 如果你的网站有很多个页面,你就需要使用分页来为每个页面做导航. 以下实例演示了如何使用 HTML 和 CSS 来创建分页: C ...

  10. yii2 分页ajax,yii2的分页和ajax分页

    要想使用Yii分页类 第一步:在控制器层加载分页类 use yii\data\Pagination; 第二步: 使用model层查询数据,并用分分页,限制每页的显示条数 $data = User::f ...

最新文章

  1. 邮箱自动转发攻击邮件服务器
  2. excel正在等待某个应用程序以完成对象链接与嵌入操作_看完这篇操作系统,和面试官扯皮就没问题了
  3. SQL Server里一些未公开的扩展存储过程
  4. JavaFX图表(六)之条形图
  5. 高可用Redis服务架构分析与搭建
  6. 基于STM32的波形发生器
  7. 社区医疗管理系统方案/案列/APP/软件/小程序/网站
  8. 计算机操作系统|汤小丹|第四版|习题答案(三)
  9. (已更新)萤火商城V2.0开源版[uni-app端],轻量级前后端分离的电商系统,支持微信小程序 + H5+ 公众号 + APP
  10. SpringBoot 配置文件加载优先级
  11. 华为交换机导入配置_华为交换机配置导入和导出
  12. HTML设置限时抢购倒计时步骤,Js网页倒计时代码(限时抢购、网购倒计时)
  13. WPF Resource资源
  14. TRS专题制作选件手册
  15. 【Linux 0.11】第九章 块设备驱动程序
  16. 【Vue3.0移动端项目--旅游网】-- 房屋详情页创建以及房屋详情图片展示
  17. java8 .map是什么意思_JDK8 stream().map() 作用
  18. 数据安全分类分级实施指南_不平衡数据集分类指南
  19. 异步电机模型预测磁链控制(MPFC)
  20. 如何在线将普通英文转换成艺术英文字体?

热门文章

  1. go环境安装时遇到的问题
  2. QT 笔记3 | Qt设计师使用 Qt创造器使用
  3. 中科大C语言考试题目,中科大计算机考研2006-2012机试试题.pdf
  4. RPC原理(1)之深入RPC原理简介
  5. 《智能制造》赵亚波《工业控制计算机》2002年15卷第3期
  6. 成功解决Hydrus-1D闪退后不能打开问题
  7. 小呆聚合支付源码开源修正版支持易支付对接各大网站,APP离线完美回调
  8. H5C3进阶学习——form表单
  9. Java之struts2框架学习
  10. 软件工程大师 Martin Fowler 谈机器学习持续交付