Skip to content

Instantly share code, notes, and snippets.

@pongo
Created October 11, 2012 13:54
Show Gist options
  • Select an option

  • Save pongo/24161b9a0965ec4ba081 to your computer and use it in GitHub Desktop.

Select an option

Save pongo/24161b9a0965ec4ba081 to your computer and use it in GitHub Desktop.
[php] Как обрезать строку по длине, не нарушая целостности слов
function cutString($string, $maxlen) {
$len = (mb_strlen($string) > $maxlen)
? mb_strripos(mb_substr($string, 0, $maxlen), ' ')
: $maxlen
;
$cutStr = mb_substr($string, 0, $len);
return (mb_strlen($string) > $maxlen)
? '"' . $cutStr . '..."'
: '"' . $cutStr . '"'
;
}
$maxlen = 21;
$string = 'Это строка которую нужно урезать';
echo cutString($string, $maxlen);
$string = 'Это строка которую';
echo cutString($string, $maxlen);
$string = 'Это строка';
echo cutString($string, $maxlen);
/* Сравните результаты этих 3 разных строк с своим кодом). Алсо это работает быстрее и корректно с UTF-8. Если у вас другая кодировка - её лучше указывать в функциях mb_*
*/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment