Мне интересно, есть ли элегантный способ обрезать текст, но при этом знать тег HTML?
Например, у меня есть эта строка:
$data = '<strong>some title text here that could get very long</strong>';
И скажем, мне нужно возвращать / выводить эту строку на странице, но хотелось бы, чтобы она была длиной не более X символов. Давайте скажем 35 для этого примера.
Тогда я использую:
$output = substr($data,0,20);
Но теперь я получаю:
<strong>some title text here that
, который, как вы можете видеть, закрывающие сильные теги отбрасываются, нарушая отображение HTML.
Есть ли способ обойти это? Также обратите внимание, что в строке можно использовать несколько тегов, например:
<p>some text here <strong>and here</strong></p>