Самое первое и простое, что пришло в голову, так это загонять каждое слово (знак препинания, идущий после определённого слова, относиться к этому слову) в элементы массива (в качестве разделителя выступает пробел), а потом выводить друг за другом нужное количество элементов массива
То есть, примерно так
PHP код:
function write_text($string,$limit,$page)
{
$page--;
$data=explode(" ",$string);
$text_array=array_chunk($data,$limit);
$text_to_show=implode(" ",$text_array[$page]);
echo $text_to_show;
}
Параметры функции:
$string-строка с текстом
$limit-сколько слов выводить
$page-номер страницы (начиная с 1)