Создать ответ 
Функция обрезки текста на php
Автор Сообщение
Winston Не на форуме
Старшина
*

Сообщений: 55
У нас с: Jan 2013
Сообщение: #1
Функция обрезки текста на php
Вот хочу поделится скриптом на php, данный скрипт обрезает текст. Очень удобен для вывода превью или длинных названий.

Код функции:

Можно заинклудить...

PHP код:
/**
 * Умная обрезка строки
 * @param string $str - исходная строка
 * @param int $lenght - желаемая длина результирующей строки
 * @param string $end - завершение длинной строки
 * @param string $charset - кодировка
 * @param string $token - символ усечения
 * @return string - обрезанная строка
 */
function cutStr($str$lenght 100$end '...'$charset 'UTF-8'$token '~') {
    
$str strip_tags($str);
    if (
mb_strlen($str$charset) >= $lenght) {
        
$wrap wordwrap($str$lenght$token);
        
$str_cut mb_substr($wrap0mb_strpos($wrap$token0$charset), $charset);    
        return 
$str_cut .= $end;
    } else {
        return 
$str;
    }


PHP код:
$end '...'//переменная $end после обрезки будет выводить троеточие.// 

А теперь пример вывода данных:


PHP код:
$myrowmysql_query("SELECT description FROM table WHERE id `id`=".(int),$db);
    while ( 
$myrow mysql_fetch_array$myrow) );

      
$str ''.$myrow['description'].'';//В переменную $str помещаем текст, который надо обрезать//

      
echo' '.cutStr($str20).' ' //выводим обрезанный текст, в данном случае, мы вывели из поля description 20 символов// 

Преимущество данной функции, она не обрезает четко по символам, в ней учтены пробелы, а поэтому у вас на выходе не будет такого:

Специалисты брокерской компа... т.е. слово "компании" обрезалось.

Данная функция режет так, что если нужно обрезать слово, то она его либо выводит полностью до пробела, либо не выводит. Что очень удобно, и все слова целые остаются.

Вот в принципе все, пользуйтесь.
19.05.2013 03:06:13
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #2
RE: Функция обрезки текста на php
Вот, спустя столько времени набросал свой скрипт обрезки строк на PHP, а потом в поиске нашел эту тему.

Ну ничего, теперь у пользователей хоть какой-то выбор будет. Big Grin
07.06.2014 23:45:33
Найти все сообщения Цитировать это сообщение
Создать ответ 


Переход:


Пользователи просматривают эту тему: 1 Гость(ей)


LiveInternet
© Copyright 2011-2024 by UsefulScript.ru