Рецепт №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;
