В настоящее время я пишу класс, который получает каналы Facebook и Twitter, а затем объединяет их в один для показа на веб-сайте.
Однако я сталкиваюсь с одной проблемой с ограничением вывода любого введенного текста из-за элементов a
, которые в итоге не будут закрыты после простой функции substr
.
Итак, представьте, у меня есть эта строка:
'Check out our site at <a href="http://site.com/">site.com</a>'
И я хочу ограничить это до 50 символов. Если я просто сделаю substr($input,0,50)
, я получу следующее:
'Check out our site at <a href="http://site.com/">s'
Незакрытый a
элемент, который превратит остальную часть моего сайта в ссылку.
Я подумал, что, возможно, используя DOMDocument, я мог бы временно заменить полный URL только частями между <a></a>
, выполнить вычитание, а затем повторно применить ссылку.
Однако я не могу понять, как это сделать, и это оставляет меня с другой проблемой / выбором: что если - учитывая, что я могу временно заменить ссылку - после удаления я получаю половину ссылки:
'Check out our site at sit'
Тогда было бы трудно повторно применить ссылку, поэтому, вероятно, лучше заменить ее на что-то вроде [[id]]
и просто сделать так, чтобы скрипт запомнил, как долго длился текст.
В любом случае, есть кто-нибудь, кто может мне помочь с этим?
РЕДАКТИРОВАТЬ это относится только к тегам a
, поскольку я strip_tags
для всего остального.