Rumah pembangunan bahagian belakang tutorial php PEAR探奇之PEAR::Pager_PHP

PEAR探奇之PEAR::Pager_PHP

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

  在页面上显示大量数据,是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 "
Salin selepas log masuk
";

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 "
Salin selepas log masuk
";

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文档:

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Petua PHP: Cepat Laksanakan Kembali ke Fungsi Halaman Sebelumnya Petua PHP: Cepat Laksanakan Kembali ke Fungsi Halaman Sebelumnya Mar 09, 2024 am 08:21 AM

Tip PHP: Cepat melaksanakan fungsi kembali ke halaman sebelumnya Dalam pembangunan web, kita sering menghadapi keperluan untuk melaksanakan fungsi kembali ke halaman sebelumnya. Operasi sedemikian boleh meningkatkan pengalaman pengguna dan memudahkan pengguna menavigasi antara halaman web. Dalam PHP, kita boleh mencapai fungsi ini melalui beberapa kod mudah. Artikel ini akan memperkenalkan cara cepat melaksanakan fungsi kembali ke halaman sebelumnya dan memberikan contoh kod PHP tertentu. Dalam PHP, kita boleh menggunakan $_SERVER['HTTP_REFERER'] untuk mendapatkan URL halaman sebelumnya

Apakah keputusan yang dikembalikan MySQL selepas memasukkan data? Apakah keputusan yang dikembalikan MySQL selepas memasukkan data? Mar 01, 2024 am 10:27 AM

MySQL ialah sistem pengurusan pangkalan data hubungan yang digunakan secara meluas untuk menyimpan dan mengurus data. Apabila kami ingin memasukkan data baru ke dalam jadual pangkalan data, kami biasanya menggunakan pernyataan INSERT. Dalam MySQL, apabila pernyataan INSERT dilaksanakan untuk berjaya memasukkan data, keputusan akan dikembalikan, yang merupakan hasil daripada operasi memasukkan. Dalam artikel ini, kami akan membincangkan secara terperinci hasil yang dikembalikan oleh MySQL selepas memasukkan data dan memberikan beberapa contoh kod tertentu. 1. Keputusan dikembalikan selepas memasukkan data dalam MySQL Apabila berjaya dilaksanakan

Lima projek sumber terbuka bahasa Go yang dipilih untuk membawa anda meneroka dunia teknologi Lima projek sumber terbuka bahasa Go yang dipilih untuk membawa anda meneroka dunia teknologi Jan 30, 2024 am 09:08 AM

Dalam era perkembangan teknologi yang pesat hari ini, bahasa pengaturcaraan bermunculan seperti cendawan selepas hujan. Salah satu bahasa yang telah menarik perhatian ramai ialah bahasa Go, yang digemari oleh ramai pembangun kerana kesederhanaan, kecekapan, keselamatan serentak dan ciri-ciri lain. Bahasa Go terkenal dengan ekosistemnya yang kukuh dengan banyak projek sumber terbuka yang sangat baik. Artikel ini akan memperkenalkan lima projek sumber terbuka bahasa Go yang dipilih dan membawa pembaca untuk meneroka dunia projek sumber terbuka bahasa Go. KubernetesKubernetes ialah enjin orkestrasi kontena sumber terbuka untuk automatik

Keperluan pembangunan bahasa Go: 5 cadangan rangka kerja yang popular Keperluan pembangunan bahasa Go: 5 cadangan rangka kerja yang popular Mar 24, 2024 pm 01:15 PM

"Go Language Development Essentials: 5 Syor Rangka Kerja Popular" Sebagai bahasa pengaturcaraan yang pantas dan cekap, bahasa Go digemari oleh semakin ramai pembangun. Untuk meningkatkan kecekapan pembangunan dan mengoptimumkan struktur kod, ramai pembangun memilih untuk menggunakan rangka kerja untuk membina aplikasi dengan cepat. Dalam dunia bahasa Go, terdapat banyak rangka kerja yang sangat baik untuk dipilih. Artikel ini akan memperkenalkan 5 rangka kerja bahasa Go yang popular dan menyediakan contoh kod khusus untuk membantu pembaca memahami dan menggunakan rangka kerja ini dengan lebih baik. 1.GinGin ialah rangka kerja web yang ringan dengan pantas

Cara menggunakan Vue untuk melaksanakan pengembalian ke kesan halaman sebelumnya Cara menggunakan Vue untuk melaksanakan pengembalian ke kesan halaman sebelumnya Sep 19, 2023 pm 01:07 PM

Cara menggunakan Vue untuk melaksanakan kesan khas untuk kembali ke halaman sebelumnya Dalam pembangunan bahagian hadapan, kita sering menghadapi situasi di mana kita perlu kembali ke halaman sebelumnya. Dengan menambahkan butang kembali, anda boleh memberikan pengalaman pengguna yang lebih baik. Artikel ini akan memperkenalkan cara menggunakan rangka kerja Vue untuk mencapai kesan khas untuk kembali ke halaman sebelumnya dan memberikan contoh kod yang sepadan. Pertama, dalam projek Vue, anda perlu membuat halaman seperti halaman sebelumnya. Kami boleh menetapkan penghalaan melalui VueRouter, dan setiap laluan sepadan dengan komponen. Dalam halaman sebelumnya, kita boleh menambah butang kembali dan lulus acara klik

Pembangunan Laravel: Bagaimana untuk melaksanakan komunikasi WebSockets menggunakan Laravel Echo dan Pusher? Pembangunan Laravel: Bagaimana untuk melaksanakan komunikasi WebSockets menggunakan Laravel Echo dan Pusher? Jun 13, 2023 pm 05:01 PM

Laravel ialah rangka kerja PHP popular yang sangat berskala dan cekap Ia menyediakan banyak alat dan perpustakaan yang berkuasa yang membolehkan pembangun membina aplikasi web berkualiti tinggi dengan cepat. Antaranya, LaravelEcho dan Pusher ialah dua alat yang sangat penting di mana komunikasi WebSockets boleh dilaksanakan dengan mudah Artikel ini akan memperincikan cara menggunakan kedua-dua alat ini dalam aplikasi Laravel. Apakah itu WebSockets? WebSockets

Penjelasan terperinci tentang peranan dan penggunaan kata kunci gema dalam PHP Penjelasan terperinci tentang peranan dan penggunaan kata kunci gema dalam PHP Jun 28, 2023 pm 08:12 PM

Penjelasan terperinci tentang peranan dan penggunaan kata kunci gema dalam PHP PHP ialah bahasa skrip bahagian pelayan yang digunakan secara meluas, yang digunakan secara meluas dalam pembangunan web. Kata kunci gema ialah kaedah yang digunakan untuk mengeluarkan kandungan dalam PHP. Artikel ini akan memperkenalkan secara terperinci fungsi dan penggunaan kata kunci gema. Fungsi: Fungsi utama kata kunci gema adalah untuk mengeluarkan kandungan ke penyemak imbas. Dalam pembangunan web, kita perlu mempersembahkan data secara dinamik ke halaman hadapan Pada masa ini, kita boleh menggunakan kata kunci gema untuk mengeluarkan data ke halaman. e

Apakah rangka kerja golang yang paling popular di pasaran? Apakah rangka kerja golang yang paling popular di pasaran? Jun 01, 2024 pm 08:05 PM

Rangka kerja Go yang paling popular pada masa ini termasuk: Gin: rangka kerja web yang ringan dan berprestasi tinggi yang ringkas dan mudah digunakan. Echo: Rangka kerja web yang pantas dan boleh disesuaikan yang menyediakan penghalaan dan perisian tengah berprestasi tinggi. GorillaMux: Pemultipleks pantas dan fleksibel yang menyediakan pilihan konfigurasi penghalaan lanjutan. Fiber: Rangka kerja web berprestasi tinggi yang dioptimumkan prestasi yang mengendalikan permintaan serentak yang tinggi. Martini: Rangka kerja web modular dengan reka bentuk berorientasikan objek yang menyediakan set ciri yang kaya.

See all articles