Класс подкачки Pear Pager — очень полезный класс подкачки PHP. Он хорошо масштабируется и может адаптироваться к потребностям различных ситуаций подкачки. По крайней мере, в моих больших и малых проектах за последние несколько лет я практически не писал дополнительного кода для подкачки. . все используют Pager, что показывает удобство использования Pager. Давайте воспользуемся кодом, чтобы увидеть примеры его использования:
Пример 1.
ОБЫЧНЫЙ ТЕКСТ
PHP:
<?php
require_once'Pager/Pager.php';
$params=массив(
'mode' =>'Прыжки',
'на страницу' => 3,
'дельта' => 2,
'itemData' =>array('a','b','c','d','e',[...опущение...],'z')
);
$pager= & Pager::factory($params);
$data =$pager->getPageData();
$links=$pager->getLinks();
//$links — это упорядоченный+ассоциативный массив со ссылками «назад», «страницы», «следующие», «первые», «последние», «все».
//Примечание: $links['all'] — то же самое, что $pager->links;
//эхо ссылок на другие страницы:
echo$links['все'];
//Пейджер также может генерировать теги <link rel="first|prev|next|last">
echo$pager->linkTags;
//Показать данные для текущей страницы:
echo'PAGED DATA: ';print_r($data);
//Результаты методов:
echo'getCurrentPageID()...: ';var_dump($pager->getCurrentPageID());
echo'getNextPageID()......: ';var_dump($pager->getNextPageID());
echo'getPreviousPageID()..: ';var_dump($pager->getPreviousPageID());
echo'numItems().....: ';var_dump($pager->numItems());
echo'numPages().....: ';var_dump($pager->numPages());
echo'isFirstPage().....: ';var_dump($pager->isFirstPage());
echo'isLastPage()..........: ';var_dump($pager->isLastPage());
echo'isLastPageComplete().: ';var_dump($pager->isLastPageComplete());
echo'$pager->range.....: ';var_dump($pager->range);
?>
При использовании Pager вы можете обрабатывать многие ситуации с подкачкой страниц, регулируя параметры массива $param. Массив $links в коде содержит некоторые ссылки, такие как предыдущая страница/номер страницы/следующая страница/первая страница/последняя страница/все. Пример
2
В настоящее время многие веб-сайты используют правила перезаписи для имитации динамических страниц в статические ради SEO, например, следующая конфигурация .htaccess:
RewriteEngine on
#Options FollowSymlinks
RewriteBase /
RewriteRule ^articles/([az]{1,12})/art([0-9]{1,4}).html$ /article.php?num=$2&month=$1 [L]
Даже в этом In в этом случае подкачка пейджера все еще может работать, см. код ниже
ОБЫЧНЫЙ ТЕКСТ.
PHP:
<?php
require_once'Pager/Pager.php';
//первый пейджер
$params1=массив(
'на страницу' => 3,
'urlVar' => pageID_articles, //1-й идентификатор
'itemData' =>$someArray
);
$pager1= & Pager::factory($params1);
$data1 =$pager1->getPageData();
$links1=$pager1->getLinks();
//второй пейджер
$params2=массив(
'на страницу' => 8,
'urlVar' => pageID_news, //2-й идентификатор
'itemData' =>$someOtherArray
);
$pager2= & Pager::factory($params2);
$data2 =$pager2->getPageData();
$links2=$pager2->getLinks();
?>
Настроив $param, вы можете сопоставить ссылку «/articles/march/art15.html» со ссылкой «/article.php?num=15&month=march», что обеспечивает более гибкую
масштабируемость.
что
масштабируемость класса Pager также хороша. Например, ранее написанный класс пейджинга на основе путей — Pager::Pathing(), этот метод был расширен из Pager и отвечал потребностям того времени.
Опубликовано 22 сентября 2006 в 7:16
Информация об авторских правах: Перепечатка возможна по желанию. При перепечатке обязательно указывайте первоисточник и информацию об авторе статьи, а также
постоянную ссылку на данное высказывание в виде гиперссылки. - http://www.ooso.net/index.php/archives/250.