Пример #1
0
    session_destroy();
}
if (!isset($_SESSION['collection'])) {
    $_SESSION['collection'] = new LivreIterator();
    $_SESSION['debut'] = 1;
    $_SESSION['taillePage'] = 10;
}
if (isset($_GET['suivant'])) {
    $_SESSION['debut'] += $_GET['suivant'] * $_SESSION['taillePage'];
}
echo "<p>**** " . count($_SESSION['collection']) . " ****</p>";
echo "<p>**** " . $_SESSION['debut'] . " -- " . $_SESSION['taillePage'] . " ****</p>";
$pageCourante = new LimitIterator($_SESSION['collection'], $_SESSION['debut'] - 1, $_SESSION['taillePage']);
echo "<ul>";
foreach ($pageCourante as $val) {
    echo "<li>";
    echo $pageCourante->key() . " " . $val->toJSON();
    echo "</li> ";
}
echo "</ul>";
$decalageFirst = (int) (-1 * $_SESSION['debut'] / $_SESSION['taillePage']);
$decalageLast = (int) ((count($_SESSION['collection']) - $_SESSION['debut']) / $_SESSION['taillePage']);
$decalagePrev = $_SESSION['debut'] == 1 ? 0 : -1;
$decalageNext = $_SESSION['debut'] + $_SESSION['taillePage'] > count($_SESSION['collection']) ? 0 : 1;
$urlFirst = $_SERVER['PHP_SELF'] . "?suivant=" . $decalageFirst;
$urlPrev = $_SERVER['PHP_SELF'] . "?suivant=" . $decalagePrev;
$urlNext = $_SERVER['PHP_SELF'] . "?suivant=" . $decalageNext;
$urlLast = $_SERVER['PHP_SELF'] . "?suivant=" . $decalageLast;
echo "<p><a href='{$urlFirst}'>First</a> <a href='{$urlPrev}'>prev</a> <a href='{$urlNext}'>next</a> <a href='{$urlLast}'>Last</a></p>";
$urlReset = $_SERVER['PHP_SELF'] . "?reset";
echo "<p><a href='{$urlReset}'>Reset</a></p>";
Пример #2
0
<?php

$xmlstring = <<<XML
<?xml version = "1.0" encoding="windows-1251"?>
<person>
\t<name>Иван</name>
\t<name>Вася</name>
\t<name>Петя</name>
\t<name>Джон</name>
\t<name>Майк</name>
\t<name>Лена</name>
\t<name>Маша</name>
\t<name>Даша</name>
</person>
XML;
$offset = 3;
$limit = 2;
$it = new LimitIterator(new SimpleXMLIterator($xmlstring), $offset, $limit);
foreach ($it as $r) {
    echo $it->key() . ' -- ' . $it->current() . '<br />';
}