Sebastian Becker: zu langen String mit "..." abkürzen

Beitrag lesen

Hallo, Daniel,

if(strlen($data[title])>30){$data[title]=substr($data[title],0,29)."...";}

Dein Code sieht eigentlich richtig aus ...

Auf http://www.php.net/manual/en/function.substr.php habe ich ein Snippet gefunden, das vielleicht noch eleganter ist, weil Worte nicht mittendrin abgeschnitten werden:

// trim text without break words in the middle
$maxTextLenght=30;
$aspace=" ";
if(strlen($text)>$maxTextLenght)
{
$text = substr(trim($text),0,$maxTextLenght);
$text = substr($text,0,strlen($text)-strpos(strrev($text),$aspace));
$text = $text.'...';
}

Versuch's doch mal damit.

Grüße,

Sebastian