Hallo,
um Strings bzw. Texte zu kürzen habe ich bisher immer die folgende, von mir selbst erstellte, Funktion verwendet:
für Plain-Text klappt die Funktion auch super.
Allerdings möchte ich nun HTML-Text kürzen.
Da lauf ich mit der Funktion gefahr, dass der String mitten in einem HTML-Tag abgeschnitten wird, was mir ja dann das komplette DOM zerhaut.
Hat jemand eine Funktion die genau das möglich macht?
Es ist wichtig das genau auch HTML-Text zurückgegeben wird.
Die Verwendung von strip_tags() ist nicht erwünscht!
Danke
um Strings bzw. Texte zu kürzen habe ich bisher immer die folgende, von mir selbst erstellte, Funktion verwendet:
PHP-Code:
/**
* String cutting
* @param string $strString To be shortened text
* @param integer $scMaxlength Limit of string length
* @param boolean $boolAtSpace Cut only at space
* @access public
* @return string
*/
function stringCutting($strString, $scMaxlength, $boolAtSpace = true) {
if (strlen($strString) > $scMaxlength) {
$strOutput = '';
$strString = substr($strString, 0, $scMaxlength-4);
if ($boolAtSpace) {
$arrExp = explode(' ', $strString);
for ($scI = 0; $scI < count($arrExp)-1; $scI++) $strOutput.= $arrExp[$scI].' ';
}
else
$strOutput = $strString;
return $strOutput.'...';
}
else {
return $strString;
}
}
Allerdings möchte ich nun HTML-Text kürzen.
Da lauf ich mit der Funktion gefahr, dass der String mitten in einem HTML-Tag abgeschnitten wird, was mir ja dann das komplette DOM zerhaut.
Hat jemand eine Funktion die genau das möglich macht?
Es ist wichtig das genau auch HTML-Text zurückgegeben wird.
Die Verwendung von strip_tags() ist nicht erwünscht!
Danke
Kommentar