разбить статью на несколько страниц

fog

Рыцарь Джедай
разбить статью на несколько страниц

Как это обычно делается? Я сделал так: в текст вставляются разделители, по которым статья разбивается на несколько страниц при выводе. Но, мне кажется это не самый удобный способ...
 

Sash [None]

Новичок
Можно поиграться с функцией Substr
PHP:
$show_text = substr($ves_text, $ot, $pokazat);
где $show_text - текст который будет показан;
$ves_text - весь текст статьи;
$ot - символ начиная с которого будет показан текст;
$pokazat - количество символов, которое будет показано..
И так далее, можно наворачивать и наворачивать.
 

fog

Рыцарь Джедай
Угу, разрывать посреди слова да?

можно конечно рег. выражениями, н-символов +первой до точки отрезать, а потом сохранять позицию, чтобы отрезать следующюю страницу от неё... но это имхо гон :)
 

Фанат

oncle terrible
Команда форума
Зачем тебе регулярные?
чтобы найти два перевода строки или чем там у тебя абзацы различаются - обязательно реги нужны?

И ты всерьез думаешь, что тебе расскажут, не зная формата твоих текстов?
 

fog

Рыцарь Джедай
Вероятно ты прав: Формат - текст отформатированный с помощью HTML тегов.
 

Фанат

oncle terrible
Команда форума
ну и какая проблема разбить текст на абзацы по <p> и выводить нужное количество абзацев?
Ну, или, скажем, так. находить <p>, находящийся на некоем $offset? и по него отрезать
 

fog

Рыцарь Джедай
у меня примерно так и сделано, только вместо <p> - у меня явный разделитель страниц.
 

Фанат

oncle terrible
Команда форума
но я-то говорю об автоматическом разделении.
допустим, ищем первый р, начиная с 50000 символа (функция [m]strpos[/m])
находим ее в позиции 50361, к примеру.
вот по нее и вырезаем.
это будет тебе первая страница.

на вторую передаем 50361, прибавляем 50000, получаем 100361 и ищем с этой позиции.

А если уж заранее готовить к публикации, то не метки расставлять, а бить сразу на файлы. Так на сервере память будет экономнее расходоваться - не надо загружать каждый раз в память весь файл.
 

fog

Рыцарь Джедай
Да, тут такое дело, народ всё чаще не в курсе, и им метки расставлять проще чем <P>

Но я твою идею понял, тоже собственно об этом подумал, спасибо за помощь!
 
Сверху