分页类代码
<?php
class
SubPages{
private
$each_disNums
;
private
$nums
;
private
$current_page
;
private
$sub_pages
;
private
$pageNums
;
private
$page_array
=
array
();
private
$subPage_link
;
private
$subPage_type
;
function
__construct(
$each_disNums
,
$nums
,
$current_page
,
$sub_pages
,
$subPage_link
,
$subPage_type
){
$this
->each_disNums=
intval
(
$each_disNums
);
$this
->nums=
intval
(
$nums
);
if
(!
$current_page
){
$this
->current_page=1;
}
else
{
$this
->current_page=
intval
(
$current_page
);
}
$this
->sub_pages=
intval
(
$sub_pages
);
$this
->pageNums=
ceil
(
$nums
/
$each_disNums
);
$this
->subPage_link=
$subPage_link
;
$this
->show_SubPages(
$subPage_type
);
}
function
__destruct(){
unset(
$each_disNums
);
unset(
$nums
);
unset(
$current_page
);
unset(
$sub_pages
);
unset(
$pageNums
);
unset(
$page_array
);
unset(
$subPage_link
);
unset(
$subPage_type
);
}
function
show_SubPages(
$subPage_type
){
if
(
$subPage_type
== 1){
$this
->subPageCss1();
}
elseif
(
$subPage_type
== 2){
$this
->subPageCss2();
}
}
function
initArray(){
for
(
$i
=0;
$i
<
$this
->sub_pages;
$i
++){
$this
->page_array[
$i
]=
$i
;
}
return
$this
->page_array;
}
function
construct_num_Page(){
if
(
$this
->pageNums <
$this
->sub_pages){
$current_array
=
array
();
for
(
$i
=0;
$i
<
$this
->pageNums;
$i
++){
$current_array
[
$i
]=
$i
+1;
}
}
else
{
$current_array
=
$this
->initArray();
if
(
$this
->current_page <= 3){
for
(
$i
=0;
$i
<
count
(
$current_array
);
$i
++){
$current_array
[
$i
]=
$i
+1;
}
}
elseif
(
$this
->current_page <=
$this
->pageNums &&
$this
->current_page >
$this
->pageNums -
$this
->sub_pages + 1 ){
for
(
$i
=0;
$i
<
count
(
$current_array
);
$i
++){
$current_array
[
$i
]=(
$this
->pageNums)-(
$this
->sub_pages)+1+
$i
;
}
}
else
{
for
(
$i
=0;
$i
<
count
(
$current_array
);
$i
++){
$current_array
[
$i
]=
$this
->current_page-2+
$i
;
}
}
}
return
$current_array
;
}
function
subPageCss1(){
$subPageCss1Str
=
""
;
$subPageCss1Str
.=
"共"
.
$this
->nums.
"条记录,"
;
$subPageCss1Str
.=
"每页显示"
.
$this
->each_disNums.
"条,"
;
$subPageCss1Str
.=
"当前第"
.
$this
->current_page.
"/"
.
$this
->pageNums.
"页
"
;
if
(
$this
->current_page > 1){
$firstPageUrl
=
$this
->subPage_link.
"1"
;
$prewPageUrl
=
$this
->subPage_link.(
$this
->current_page-1);
$subPageCss1Str
.=
"[<a href='$firstPageUrl'>首页</a>] "
;
$subPageCss1Str
.=
"[<a href='$prewPageUrl'>上一页</a>] "
;
}
else
{
$subPageCss1Str
.=
"[首页] "
;
$subPageCss1Str
.=
"[上一页] "
;
}
if
(
$this
->current_page <
$this
->pageNums){
$lastPageUrl
=
$this
->subPage_link.
$this
->pageNums;
$nextPageUrl
=
$this
->subPage_link.(
$this
->current_page+1);
$subPageCss1Str
.=
" [<a href='$nextPageUrl'>下一页</a>] "
;
$subPageCss1Str
.=
"[<a href='$lastPageUrl'>尾页</a>] "
;
}
else
{
$subPageCss1Str
.=
"[下一页] "
;
$subPageCss1Str
.=
"[尾页] "
;
}
echo
$subPageCss1Str
;
}
function
subPageCss2(){
$subPageCss2Str
=
""
;
$subPageCss2Str
.=
"当前第"
.
$this
->current_page.
"/"
.
$this
->pageNums.
"页
"
;
if
(
$this
->current_page > 1){
$firstPageUrl
=
$this
->subPage_link.
"1"
;
$prewPageUrl
=
$this
->subPage_link.(
$this
->current_page-1);
$subPageCss2Str
.=
"[<a href='$firstPageUrl'>首页</a>] "
;
$subPageCss2Str
.=
"[<a href='$prewPageUrl'>上一页</a>] "
;
}
else
{
$subPageCss2Str
.=
"[首页] "
;
$subPageCss2Str
.=
"[上一页] "
;
}
$a
=
$this
->construct_num_Page();
for
(
$i
=0;
$i
<
count
(
$a
);
$i
++){
$s
=
$a
[
$i
];
if
(
$s
==
$this
->current_page ){
$subPageCss2Str
.=
"[<span style='color:red;font-weight:bold;'>"
.
$s
.
"</span>]"
;
}
else
{
$url
=
$this
->subPage_link.
$s
;
$subPageCss2Str
.=
"[<a href='$url'>"
.
$s
.
"</a>]"
;
}
}
if
(
$this
->current_page <
$this
->pageNums){
$lastPageUrl
=
$this
->subPage_link.
$this
->pageNums;
$nextPageUrl
=
$this
->subPage_link.(
$this
->current_page+1);
$subPageCss2Str
.=
" [<a href='$nextPageUrl'>下一页</a>] "
;
$subPageCss2Str
.=
"[<a href='$lastPageUrl'>尾页</a>] "
;
}
else
{
$subPageCss2Str
.=
"[下一页] "
;
$subPageCss2Str
.=
"[尾页] "
;
}
echo
$subPageCss2Str
;
}
}
?>
相关推荐
根据给定的信息,本文将对一个“简单、方便、功能全”的PHP分页类进行详细的解析,包括其构造方法、属性、以及如何实现分页显示的功能。通过本篇内容,您将了解到该类的设计思想、核心函数的工作原理,以及如何在...
一个简单,方便,功能全的php分页类,每页显示的条目数,总条目数,当前被选中的页,每次显示的页数,用来构造分页的数组,每个分页的链接,显示分页的类型。
本篇文章将详细介绍一个名为"pages.php"的PHP分页类,它以其简单易用的特点,为开发者提供了一个快速实现分页功能的解决方案。 首先,我们来理解一下"pages.php"分页类的基本结构。此类通常会包含以下几个核心部分...
本文将详细介绍一个自编的简单实用PHP分页类,并探讨其核心概念和实现方式。 首先,PHP分页类的主要目标是简化在数据库查询中实现分页的代码,提供友好的接口来控制每页显示多少条记录以及如何导航到不同页面。这个...
本资源“简单实用的PHP分页类.rar”提供了一个经典的PHP分页类,它可以帮助开发者轻松实现网页上的数据分页功能。下面我们将详细探讨PHP分页的基本原理、分页类的实现以及如何使用此类。 1. PHP分页基本原理: ...
综上所述,"超强php分页类"提供了一个完整的解决方案,不仅包含分页逻辑,还集成了数据库操作和配置读取,使得在PHP项目中实现分页变得简单易行。对于有一定PHP基础的开发者来说,通过阅读类中的详细注释和说明,...
PHP分页类通常会根据数据库查询结果的总数量和每页显示的数据条数来计算总的页数。然后,它会生成相应的HTML代码,以链接的形式呈现分页导航,让用户可以轻松跳转到不同的页面。 这个“PHP简单漂亮的分页类”应该...
这个“PHP分页类集锦”提供了一个自定义的分页类示例,帮助开发者实现简单的分页功能。 分页类的工作原理: 分页类的主要任务是计算总页数、当前页数,并生成用于导航的页码索引条。在这个例子中,类名为`Page`,它...
通过这个强大的PHP分页类,开发者可以快速地为网站或应用添加高质量的分页功能,无需从头编写复杂的分页逻辑。同时,由于其灵活性,即使对于有特殊设计要求的项目,也能轻松应对。只需遵循`readme.txt`的指导,便能...
本资源"功能最全的php分页技术"提供了一种全面且强大的PHP分页解决方案。 首先,我们来了解一下PHP分页的基本概念。分页主要是通过查询数据库并限制返回结果的数量,然后通过导航链接让用户在不同数据块间切换。...
该PHP分页类可能会包含以下关键功能: 1. **初始化参数**:类的实例化时,需要传入总记录数、每页显示的记录数、当前页数等基本信息。这些参数对于计算分页链接至关重要。 2. **计算总页数**:根据总记录数和每页...
1. **下载解压**:首先下载提供的"一个功能比较高的分页类(for PHP5.x)"文件,解压到你的项目目录中。 2. **引入类库**:在需要使用分页功能的PHP文件中,引入分页类库的文件,并实例化分页对象。 3. **配置参数**...
在PHP中,一个分页类通常是一个自定义的类,它封装了计算总页数、生成分页链接以及处理当前页码等逻辑,使得开发者可以更方便地在项目中实现分页功能。PHP万能分页类就是这样一个通用性强、易于使用的分页解决方案。...
在实际应用中,一个简单的PHP分页类可能如下所示: ```php class Pagination { private $total_rows; private $per_page; private $current_page; public function __construct($total_rows, $per_page, $...
1. **引入类**:将分页函数类的文件(在这个例子中是"简单的PHP分页函数类.php")引入到需要分页功能的PHP文件中。 2. **实例化类**:创建类的实例,并传入必要的参数,如每页显示的数据条数,当前页码等。 3. **...
用PHP实现了网站开发中常用的分页功能。并且实现了很好的封装哦!使用起来简单方便啦
首先,让我们看看在不使用分页类的情况下,如何实现简单的分页。基本思路是通过SQL查询限制返回的数据量,结合前端页面的页码控制,实现数据的分段显示。例如,我们可以通过以下步骤实现: 1. 计算总记录数:使用`...
4. 轻松集成:由于其通用性,该组件可以无缝集成到任何PHP项目中,无论是基于MVC框架还是简单的PHP脚本,只需简单引入并调用相应的函数或类,即可实现分页功能。 5. 性能优化:一个好的分页组件还会考虑到性能,...
这个“简单的php分页类库”提供了一个便捷的方式来实现这一功能。下面我们将详细探讨这个类库的使用方法、核心原理以及如何将其应用于实际项目。 首先,这个类库的核心思想是封装了数据库查询和HTML分页链接的生成...
3. **PHP分页导航链接生成** - 在实际应用中,除了显示数据外,还需要为用户提供方便的页面跳转功能。 - 通过循环生成每个页面的链接,用户点击后可以通过URL参数改变当前页面。 - 示例代码: ```php for ($i =...