Heim Backend-Entwicklung PHP-Tutorial PEAR探奇之PEAR::Pager_PHP

PEAR探奇之PEAR::Pager_PHP

Jun 01, 2016 pm 12:32 PM
br echo param var_dump 返回

  在页面上显示大量数据,是WEB项目中很常见的一个作法,但限于屏幕的大小,为了便于用户阅读,我们通常需要将数据分页显示,所以分页功能是大部份项目不可缺少的。PEAR::Pager是一个功能强大的分页类,使用非常方便。


  系统需求:PHP4.3.* /PHP5,PEAR::Pager


  PEAR::Pager有两种分页显示模式,一是Jumping,二是Sliding。两者有什么区别,我们来看两个例子:

Jumping.php


require_once 'Pager/Pager.php';

$params = array(
'mode' => 'Jumping',
'perPage' => 3,
'delta' => 5,
'itemData' => array('a','b','c','d','e','z','ty','xc','fg','fg','jk','hj','ty','xc','e','z','ty','xc','fg','fg','jk','hj','ty','xc')
);

echo "
当前分页模式:".$params['mode'];
echo "
每页显示数据条数:".$params['perPage'];
echo "
显示页数:".$params['delta'];
echo "
详细数据数组:";
print_r($params['itemData']);


$pager = & Pager::factory($params);
$data = $pager->getPageData();
$links = $pager->getLinks();


echo "

最后效果:";
echo $links['all'];
echo $pager->linkTags;

echo '

当前页的数据: ' ;
echo "

"; <br>print_r($data); <br>echo "
Nach dem Login kopieren
";

echo "其它类方法得到的数据:

";
echo 'getCurrentPageID()...: ';
var_dump($pager->getCurrentPageID());
echo "
";
echo 'getNextPageID()......: ';
var_dump($pager->getNextPageID());
echo "
";
echo 'getPreviousPageID()..: ';
var_dump($pager->getPreviousPageID());
echo "
";
echo 'numItems()...........: ';
var_dump($pager->numItems());
echo "
";
echo 'numPages()...........: ';
var_dump($pager->numPages());
echo "
";
echo 'isFirstPage()........: ';
var_dump($pager->isFirstPage());
echo "
";
echo 'isLastPage().........: ';
var_dump($pager->isLastPage());
echo "
";
echo 'isLastPageComplete().: ';
var_dump($pager->isLastPageComplete());
echo "
";
echo '$pager->range........: ';
var_dump($pager->range); echo "
";

?>


  运行结果如下图:

PEAR探奇之PEAR::Pager_PHP


Sliding.php

require_once 'Pager/Pager.php';

$month = 'september';

$params = array(
'mode' => 'Sliding',
'append' => false,
'urlVar' => 'num',
'path' => 'http://localhost/' . $month,
'fileName' => 'art%d.html', //%d将被替换成当前页的数字
'itemData' => array('a','b','c','d','e','z','ty','xc','fg','fg','jk','hj','ty','xc','e','z','ty','xc','fg','fg','jk','hj','ty','xc'),
'perPage' => 3
);

echo "
当前分页模式:".$params['mode'];
echo "
每页显示数据条数:".$params['perPage'];
echo "
链接指向路径:".$params['path'];
echo "
链接指向文件名:".$params['fileName'];
echo "
详细数据数组:";
print_r($params['itemData']);


$pager = & Pager::factory($params);

$data = $pager->getPageData();

echo "

最后效果:";
echo $pager->links;

echo '

当前页的数据: ' ;
echo "

"; <br>echo 'Data for current page: '; print_r($data); <br>echo "
Nach dem Login kopieren
";

echo "其它类方法得到的数据:

";
echo 'getCurrentPageID()...: ';
var_dump($pager->getCurrentPageID());
echo "
";
echo 'getNextPageID()......: ';
var_dump($pager->getNextPageID());
echo "
";
echo 'getPreviousPageID()..: ';
var_dump($pager->getPreviousPageID());
echo "
";
echo 'numItems()...........: ';
var_dump($pager->numItems());
echo "
";
echo 'numPages()...........: ';
var_dump($pager->numPages());
echo "
";
echo 'isFirstPage()........: ';
var_dump($pager->isFirstPage());
echo "
";
echo 'isLastPage().........: ';
var_dump($pager->isLastPage());
echo "
";
echo 'isLastPageComplete().: ';
var_dump($pager->isLastPageComplete());
echo "
";
echo '$pager->range........: ';
var_dump($pager->range); echo "
";
?>

运行结果如下图:

PEAR探奇之PEAR::Pager_PHP

  运行以上代码,可以发现,Jumping是跳跃式前进,一次翻几页,而Sliding是逐页地前进。

  在例子中可以看到PEAR::Pager提供了很多类方法,可以返回我们所需要的数据,如当前页ID,下一页ID,当前页上数据条数等等。

下面将所有类方法的作用列出,供参考:

Pager::Pager() – 构造函数 参数为二维数组 详见上面的示例

Pager::factory() -- 建立一个Pager对象

Pager::getCurrentPageID() 返回当前页的ID

Pager::getLinks() 返回某个页所对应的链接 参数为页面的ID 参数为空则返回当前页的链接

Pager::getNextPageID()  返回下一页的ID

Pager::getOffsetByPageId() 返回记录范围 

例如当前页为1,每页显示10条,则返回(1,10)

如当前页为2,每页显示8条,则返回(8,16)

Pager::getPageData() 以数组形式返回当前页数据 

Pager::getPageIdByOffset() 根据记录范围返回页面ID

本方法仅当分页模式为Jumping时有效

Pager::getPageRangeByPageId() 返回某个页面所在的记录范围

例如模式为Jumping时,如果pageId=3 , delta=10,则返回(1,10),如果pageId=3 , delta=10,则仍然返回(1,10),因为1,3都在10的范围之内。如果pageId =14,则返回(10,20),

因为14落于10,20之间。

Pager::getPreviousPageID() 得到前一页的ID

Pager::getperpageselectbox() 返回一个XHTML的Select标签字符串

可用于直接跳转到某个页面

Pager::isFirstPage() 判断当前页是否第一页

Pager::isLastPage() 判断当前页是否最后第一页

Pager::isLastPageComplete() 判断是否到达最后一页

Pager::numItems() 返回总记录数

Pager::numPages() 返回总页数


其它功能及用法请参看PEAR::Pager文档:

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP-Tipps: Implementieren Sie schnell die Funktion „Zurück zur vorherigen Seite'. PHP-Tipps: Implementieren Sie schnell die Funktion „Zurück zur vorherigen Seite'. Mar 09, 2024 am 08:21 AM

PHP-Tipps: Implementieren Sie schnell die Funktion zum Zurückkehren zur vorherigen Seite. Bei der Webentwicklung müssen wir häufig die Funktion zum Zurückkehren zur vorherigen Seite implementieren. Solche Vorgänge können das Benutzererlebnis verbessern und Benutzern die Navigation zwischen Webseiten erleichtern. In PHP können wir diese Funktion durch einfachen Code erreichen. In diesem Artikel wird erläutert, wie Sie die Funktion zum Zurückkehren zur vorherigen Seite schnell implementieren können, und es werden spezifische PHP-Codebeispiele bereitgestellt. In PHP können wir $_SERVER['HTTP_REFERER'] verwenden, um die URL der vorherigen Seite abzurufen

Welche Ergebnisse gibt MySQL nach dem Einfügen von Daten zurück? Welche Ergebnisse gibt MySQL nach dem Einfügen von Daten zurück? Mar 01, 2024 am 10:27 AM

MySQL ist ein weit verbreitetes relationales Datenbankverwaltungssystem zum Speichern und Verwalten von Daten. Wenn wir neue Daten in eine Datenbanktabelle einfügen möchten, verwenden wir normalerweise die INSERT-Anweisung. Wenn in MySQL die INSERT-Anweisung ausgeführt wird, um Daten erfolgreich einzufügen, wird ein Ergebnis zurückgegeben, das das Ergebnis des Einfügevorgangs ist. In diesem Artikel werden wir die von MySQL nach dem Einfügen von Daten zurückgegebenen Ergebnisse ausführlich besprechen und einige spezifische Codebeispiele bereitstellen. 1. Das nach dem Einfügen der Daten zurückgegebene Ergebnis liegt bei erfolgreicher Ausführung in MySQL vor

Fünf ausgewählte Open-Source-Projekte in der Go-Sprache, mit denen Sie die Welt der Technologie erkunden können Fünf ausgewählte Open-Source-Projekte in der Go-Sprache, mit denen Sie die Welt der Technologie erkunden können Jan 30, 2024 am 09:08 AM

Im heutigen Zeitalter der rasanten technologischen Entwicklung schießen Programmiersprachen wie Pilze nach einem Regenschauer aus dem Boden. Eine der Sprachen, die viel Aufmerksamkeit erregt hat, ist die Go-Sprache, die von vielen Entwicklern wegen ihrer Einfachheit, Effizienz, Parallelitätssicherheit und anderen Funktionen geliebt wird. Die Go-Sprache ist für ihr starkes Ökosystem mit vielen hervorragenden Open-Source-Projekten bekannt. In diesem Artikel werden fünf ausgewählte Open-Source-Projekte für die Go-Sprache vorgestellt und der Leser soll die Welt der Open-Source-Projekte für die Go-Sprache erkunden. KubernetesKubernetes ist eine Open-Source-Container-Orchestrierungs-Engine für die Automatisierung

Go-Grundlagen zur Sprachentwicklung: 5 beliebte Framework-Empfehlungen Go-Grundlagen zur Sprachentwicklung: 5 beliebte Framework-Empfehlungen Mar 24, 2024 pm 01:15 PM

„Grundlagen der Go-Sprachentwicklung: 5 beliebte Framework-Empfehlungen“ Als schnelle und effiziente Programmiersprache wird die Go-Sprache von immer mehr Entwicklern bevorzugt. Um die Entwicklungseffizienz zu verbessern und die Codestruktur zu optimieren, entscheiden sich viele Entwickler für die Verwendung von Frameworks, um Anwendungen schnell zu erstellen. In der Welt der Go-Sprache stehen viele hervorragende Frameworks zur Auswahl. In diesem Artikel werden fünf beliebte Go-Sprach-Frameworks vorgestellt und spezifische Codebeispiele bereitgestellt, um den Lesern zu helfen, diese Frameworks besser zu verstehen und zu verwenden. 1.GinGin ist ein leichtes Web-Framework mit hoher Geschwindigkeit

So verwenden Sie Vue, um den Effekt „Zurück zur vorherigen Seite' zu implementieren So verwenden Sie Vue, um den Effekt „Zurück zur vorherigen Seite' zu implementieren Sep 19, 2023 pm 01:07 PM

So implementieren Sie mit Vue den Spezialeffekt der Rückkehr zur vorherigen Seite. Bei der Front-End-Entwicklung stoßen wir häufig auf Situationen, in denen wir zur vorherigen Seite zurückkehren müssen. Durch das Hinzufügen einer Zurück-Schaltfläche können Sie eine bessere Benutzererfahrung bieten. In diesem Artikel wird erläutert, wie Sie mithilfe des Vue-Frameworks den besonderen Effekt erzielen, zur vorherigen Seite zurückzukehren, und entsprechende Codebeispiele bereitstellen. Zunächst müssen Sie im Vue-Projekt eine Seite wie die vorherige Seite erstellen. Wir können das Routing über VueRouter festlegen und jede Route entspricht einer Komponente. Auf der vorherigen Seite können wir eine Zurück-Schaltfläche hinzufügen und das Klickereignis übergeben

Laravel-Entwicklung: Wie implementiert man die WebSockets-Kommunikation mit Laravel Echo und Pusher? Laravel-Entwicklung: Wie implementiert man die WebSockets-Kommunikation mit Laravel Echo und Pusher? Jun 13, 2023 pm 05:01 PM

Laravel ist ein beliebtes PHP-Framework, das hoch skalierbar und effizient ist. Es bietet viele leistungsstarke Tools und Bibliotheken, die es Entwicklern ermöglichen, schnell hochwertige Webanwendungen zu erstellen. Darunter sind LaravelEcho und Pusher zwei sehr wichtige Tools, mit denen die WebSockets-Kommunikation einfach implementiert werden kann. In diesem Artikel wird detailliert beschrieben, wie diese beiden Tools in Laravel-Anwendungen verwendet werden. Was sind WebSockets? WebSockets

Detaillierte Erläuterung der Rolle und Verwendung des Schlüsselworts echo in PHP Detaillierte Erläuterung der Rolle und Verwendung des Schlüsselworts echo in PHP Jun 28, 2023 pm 08:12 PM

Ausführliche Erklärung der Rolle und Verwendung des Schlüsselworts echo in PHP PHP ist eine weit verbreitete serverseitige Skriptsprache, die häufig in der Webentwicklung verwendet wird. Das Schlüsselwort echo ist eine Methode zur Ausgabe von Inhalten in PHP. In diesem Artikel werden die Funktion und Verwendung des Schlüsselworts echo ausführlich vorgestellt. Funktion: Die Hauptfunktion des Schlüsselworts echo besteht darin, Inhalte an den Browser auszugeben. Bei der Webentwicklung müssen wir Daten dynamisch auf der Front-End-Seite präsentieren. Zu diesem Zeitpunkt können wir das Schlüsselwort echo verwenden, um die Daten auf der Seite auszugeben. e

Was sind die beliebtesten Golang-Frameworks auf dem Markt? Was sind die beliebtesten Golang-Frameworks auf dem Markt? Jun 01, 2024 pm 08:05 PM

Die derzeit beliebtesten Go-Frameworks sind: Gin: leichtes, leistungsstarkes Web-Framework, einfach und benutzerfreundlich. Echo: Ein schnelles, hochgradig anpassbares Web-Framework, das leistungsstarkes Routing und Middleware bietet. GorillaMux: Ein schneller und flexibler Multiplexer, der erweiterte Routing-Konfigurationsoptionen bietet. Fiber: Ein leistungsoptimiertes, leistungsstarkes Web-Framework, das viele gleichzeitige Anfragen verarbeitet. Martini: Ein modulares Web-Framework mit objektorientiertem Design, das einen umfangreichen Funktionsumfang bietet.

See all articles