Heim >Backend-Entwicklung >PHP-Tutorial >PHP-Funktion zum Abfangen chinesischer und englischer Zeichenfolgen (einschließlich HTML)

PHP-Funktion zum Abfangen chinesischer und englischer Zeichenfolgen (einschließlich HTML)

高洛峰
高洛峰Original
2016-11-29 15:56:561163Durchsuche

Hier ist eine Abfangfunktion, die das Mischen chinesischer und englischer Zeichen unterstützt, einschließlich der Verarbeitung von HTML-Tags.

Abfangfunktion für chinesische und englische Zeichenfolgen (einschließlich HTML). lautet wie folgt:

function get_word($string, $length, $dot = '..',$charset='gbk') {

if(strlen( $string) < = $length) {

return $string;

}

$string = str_replace(array('',' ', '&', '"', ' <', '>'), array('','','&', '"', '<', '>'), $string);

$strcut = '';

if(strtolower($charset) == 'utf-8') {

$n = $tn = $noc = 0; $n < strlen($string)) {

$t = ord($string[$n]);

if($t == 9 || $t == 10 ||. (32 <= $t && $t <= 126)) {

$tn = 1; $n++; t && $t <= 223) {

$tn = 2; $n += 2;

} elseif(224 < = $t && $ t < 239) {

$tn = 3; $n += 2;

} elseif(240 <= $t && $t <= 247) {

$tn = 4; $n += 4; $noc += 2;

} elseif(248 <= $t && $t < ;= 251) {

$tn = 5; $n += 5; $noc += 2;

} elseif($t == 252 || $t == 253) {

$tn = 6; $n += 2;

} else {

}

if($noc >= $length) {

break;

}

}

if($noc > $length) {

$n -= $tn;

$strcut = substr($string, 0, $n> } else {

for($i = 0; $i < $length; $i++) {

$strcut .= ord($string[$i]) > ? ].$string[++$i] : $string[$i];

}

return $strcut.$dot; >}

$str = „Willkommen bei prägnantem Nowamagic“; >

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn