Jump to content
php.lv forumi

Teskta apcirpšana ar substr un html entītijas.


mad182

Recommended Posts

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;
}

Edited by mad182
Link to comment
Share on other sites

×
×
  • Create New...