Gribēju pajautāt, kāds būtu labākais un efektīvākais veids, kā nogriezt daļu no raksta, ko parādīt kā ievadu, lai tas nebojātu xhtml kodu. Ar Latviešu spec simboliem tiku galā izmantojot kaut kur nospertu funkciju utf8_substr, bet vēl paliek problēma ar, piemēram, vai š, kuriem dažkārt gadās nogriezt tikai pusi, un tā tad nu bojā manu valīdo xhtml'u :/
function utf8_substr($str,$from,$len){
return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.
'((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
'$1',$str);
}
function textlimit($string, $length, $replacer = '...') {
$string = strip_tags($string);
if(strlen($string) > $length)
return (preg_match('/^(.*)\W.*$/', utf8_substr($string, 0, $length+1), $matches) ? $matches[1] : utf8_substr($string, 0, $length)) . $replacer;
return $string;
}