斜体の gb2312 PHP インターセプト文字列関数は gb2312 と utf-8 をサポートします

WBOY
リリース: 2016-07-29 08:41:51
オリジナル
1271 人が閲覧しました

1. GB2312文字をインターセプトする関数
PHPコード

コードをコピー コードは次のとおりです:


//中国語の文字列をインターセプト
function mysubstr($str, $start, $len) {
$tmpstr = "";
$strlen = $start + $len;
for($i = 0; $i <$strlen; $i++) {
if(substr($str, $i, 1 )) > 0xa0) {
$tmpstr .= substr($str, $i, 2);
$tmpstr .= substr($i, 1); $ tmpstr; utf8 文字列
function utf8Substr($str, $from, $len)
{
return preg_replace('#^(?:[x00-x7F]|[xC0-xFF][x80-xBF]+){0,' .$ から。'}'。
'((?:[x00-x7F]|[xC0-xFF][x80-xBF]+){0,'.$len.'}).*#s',
'$1​​ ',$str);
}
?>



3. UTF-8 および GB2312 でサポートされる漢字インターセプト関数
PHP コード

コードは次のとおりです。 /*

Utf-8 と gb2312 の両方でサポートされる漢字インターセプト関数

cut_str(string, インターセプト長, 開始長, エンコーディング);
エンコーディングのデフォルトは utf-8 です
開始長のデフォルトは 0 です
*/
function Cut_str($ string, $sublen, $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))."..."; ($t_string[0 ], $start, $sublen));

}
$start = $start*2
$strlen = strlen($string); $tmpstr = '' ;
for($i< $strlen; $i++)

{ if($i>=$start && $i< ($start+$sublen)) { 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++;
}
if(strlen($tmpstr)< $strlen ) tmpstr.= ". ..";
return $tmpstr;
}
$str = "abcd がインターセプトする必要がある文字列"
echo Cut_str($str, 0, 'gb2312'); >


4 . BugFreeの文字インターセプト関数



コードをコピー

コードは次のとおりです:


/**
* @package BugFree
* @version $Id: FunctionsMain.inc.php,v 1.32 2005/09/24 11:38:37 wwccss Exp $
*
*
* 文字列の一部を返す(関数 substr( ))
*
* @著者 Chunsheng Wang
* @param string $String 切り取る文字列。
* @param int $Length 返される文字列の長さ。
* @param booble $Append "..." を追加するかどうか: false|true
* @return string 切り取られた文字列。
*/
function sysSubStr($String ,$Length,$Append = false )
{
if (strlen($String) < = $Length )
{
return $String;
else
{
$I = 0; ; $Length) {
$ StringTMP = substr($String,$I,1);
if ( ord($StringTMP) >=224 )
{

$StringTMP = substr($String,$I,3) ; $I = $I + 3; elseif( ord($StringTMP) >=192 ) $StringTMP = substr($String,$I,2); ; }

else

{
$I = $I + 1;
$StringLast[] = $StringTMP;
$StringLast = implode("",$StringLast);
$StringLast .= ".. .";
return $StringLast;
}
$String = "book.chinaz.com -- ウェブマスター ライブラリ、ウェブマスター チュートリアル"; $Append = false
echo sysSubStr($String,$Length,$Append);
上記は、gb2312 と utf-8 をサポートする通常のスクリプト gb2312 の PHP インターセプト文字列関数を紹介しており、通常のスクリプト gb2312 の内容も含めて、PHP チュートリアルに興味のある友人に役立つことを願っています。


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート