Сокращение длинной строки

Рецепт №12. Из книги «128 рецептов php»
Перейти к оглавлению

При выводе строк не редко бывает необходимо вместить текст в определенный размер. Но строки могут иметь различную длину, в том числе и слишком большую. В таких случаях необходимо укоротить строку. А для более читабельного вида добавить в конце многоточие. Для реализации необходимо получить длину строки, сравнить ее размер с допустимой длиной и при необходимости обрезать и приписать в конце многоточие.

Пример:

// тестовая строка
$str = "Строка с очень длинным текстом, который необходимо укоротить!";
// предел вывода текста
$count_max = 15;
// в эту переменную запишем результат
$result_str = "";
// если строка, больше предела + 3(3 точки в конце)
if(mb_strlen($str, 'utf-8') > ($count_max + 3)){
    // обрезаем строку
    $sub_str = mb_substr($str, 0, $count_max, 
  'utf-8');
    // удаляем пробелы в начале и конце 
  // обрезанной строки, и дописываем 
  // в конец три точки
    $result_str = trim($sub_str) . "...";
    // добавляем к тексту атрибут title, 
  //для вывода подсказки при наведении
    $result_str = "
<span title='$str'>$result_str</span>
  ";
}else{
    // если строка и так короткая
    $result_str = $str;
}
 
// вывод результата
echo $result_str;
Рассказать друзьям:


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*