ホームページ  >  記事  >  バックエンド開発  >  PHP文字列インターセプト機能、中国語と英語の混合をサポート

PHP文字列インターセプト機能、中国語と英語の混合をサポート

高洛峰
高洛峰オリジナル
2016-11-29 14:52:461052ブラウズ

PHP の文字列インターセプト関数は中国語と英語の混合をサポートします。これまでは、PHP に付属の関数を使用して文字列をインターセプトしていました。今日は、中国語と英語の混合をサポートする文字列インターセプト関数を見ていきます。

phpの文字列インターセプト関数のコードは次のとおりです:

function Cutstr($string, $sublen=10, $start = 0, $code = 'utf-8')

{

if($code == 'utf- 8')

{

$pa = "/[x01-x7f]|[xc2-xdf][x80-xbf]|xe0[xa0-xbf][x80-xbf]|[xe1-xef][x80- xbf][x80-xbf]|xf0[x90-xbf][x80-xbf][x80-xbf]|[xf1-xf7][x80-xbf][x80-xbf][x80-xbf]/";

preg_match_all($pa, $string, $t_string);

//if(count($t_string[0]) - $start > $sublen) return join('', array_slice($t_string[0], $start) , $sublen))."...";

return join('', array_slice($t_string[0], $start, $sublen));

else

$start = $start*2;

$sublen = $sublen*2;

$tmpstr = ''; $i=0; $ i++)

{

if($i>=$start && $i

{

if(ord(substr($string, $i, 1))>129) $tmpstr.= substr($string, $i, 2);

else $tmpstr.= substr($string, $i, 1)

if(ord(substr($string, $i, 1))>129) $i++;

}//オープンソース ソフトウェア: phpfensi.com

//if(strlen($tmpstr)<$strlen ) $tmpstr.= "..."; $tmpstr を返します

}

}

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。