Использую на своем тестовом проекте
типограф Лебедева, у него ограничен размер принимаемого текста.
Я хочу попробовать разбить HTML на части.
Написал рекурсивную функцию, однако, иногда выдает вот такую ошибку. Я так понимаю это две разбитые строки.
иногда же - все нормально, зачастую это происходит если внести какие-то изменения, например удалить одно слово.
Код функции:
public function get_typograph_content( $content ) {
$remoteTypograf = new RemoteTypograf();
$remoteTypograf->br (false);
$remoteTypograf->p (false);
$remoteTypograf->nobr (3);
$remoteTypograf->quotA ('laquo raquo');
$remoteTypograf->quotB ('bdquo ldquo');
$contentSize = strlen($content);
if ( $contentSize < 32000 ) {
$content = $remoteTypograf->processText( $content );
return $content;
} else {
$firstPart = substr($content, 0, $contentSize/2);
$lastPart = substr($content, $contentSize/2);
$content = $this->get_typograph_content( $firstPart );
$content .= $this->get_typograph_content( $lastPart );
//var_dump($content);
return $content;
}
}
Правильно ли я понимаю что проблема в моей функции, а не в типографе? Мне необходимо не просто разбивать HTML, а использовать парсер, что бы разбить HTML по блокам и уже тогда обрабатывать типографом?