Облазив все просторы интернета, я не нашел НИ ОДНОГО удовлетворяющего меня кода постраничного вывода, который был мне нужен для моей библиотеки lib.guest-marketing.com, в связи с чем мне пришлось вспомнить молодость и написать его самостоятельно.

Тем что получилось я хочу поделиться с Вами, дабы Вы не испытывали трудностей и не чувствовали тот яростный гнев, который обуревал меня в процессе гугления.

<?php

$description = $_POST[‘textbuffer’];

// Определяем максимальное число параграфов на странице
define(‘PARA_ON_PAGE’, 20);

// читаем файл
$content = $description;

// забираем только текст внутри тега <body>
if (preg_match(‘~<body[^>]*>(.*)</body>~s’, $content, $matches))
$content = $matches[1];

$pages = array();

// получаем параграфы
$paragraphs = explode( ‘</p>’, $content);

if (count($paragraphs) > PARA_ON_PAGE) {
$i = $p = 0;
while( $i < count($paragraphs)) {
$page_paragraphs = array_slice( $paragraphs, $i, PARA_ON_PAGE);
$pages[$p] = implode(‘</p>’, $page_paragraphs) . ‘</p>’; // собираем страницу
$p++;
$i += PARA_ON_PAGE;
}
} else { // всего одна страница
$pages[0] = $content;
}

// номер текущей страницы
$page = isset($_GET[‘page’]) ? $_GET[‘page’] : 1;

// выводим текущую страницу
echo $pages[ $page — 1 ];

if (count($pages) > 1) { // простенький навигатор
echo ‘<br/></br>’;
for ($i = 1; $i <= count($pages); $i++)
if ($i == $page) {
echo ‘<strong>’.$i. ‘</strong>&nbsp;&nbsp;’; } else {
echo ‘<a href=»fb2parcerstr.php?fnazvanie=’.$fnazvanie.’&page=’.$i.'»> [‘.$i.’] </a>&nbsp;&nbsp;’;
}
}

?>

Собственно в чем соль.. как Вы видите, достаточно строковой переменной  с данными, которую не проблема создать. Это могут быть данные как из таблицы mysql, как из файла, так и данные полученные любым другим способом.

Удачи!