Мне интересно, есть ли элегантный способ обрезать какой-то текст, но будучи тегом 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>