Обрезать строку до определенного количества символов, игнорируя HTML - PullRequest
3 голосов
/ 15 марта 2012

Я использую функцию codeigniter's character_limiter () для усечения строки до определенного количества символов. Я использую это для создания выдержек из постов.

Проблема в том, что строка содержит HTML-теги, поэтому эти символы подсчитываются, но они не видны. Кроме того, он может обрезать строку в середине тега и испортить форматирование страницы.

Например, если у меня есть следующее:

This is some text with a <a href="http://google.com">a link</a>

Если я ограничу его до 54 символов, он будет обрезан после "a" в "ссылке", и не будет закрывающего тега, и он превратит все после него в текст привязки.

Как я могу предотвратить это? Должен ли я просто удалить все HTML-теги перед ограничением символов?

Ответы [ 2 ]

1 голос
/ 04 июля 2013
$this->load->helper('text');
echo word_limiter(strip_tags($description),40);

вот что я делаю для мета-описания, попробуйте http://caverne.fr

1 голос
/ 15 марта 2012

Да, character_limiter(strip_tags($text),54); должно работать на вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...