顯示效果:<?php
//php擷取gb2312中文字串
/** * php擷取gb2312中文字串
* @param $str 被擷取的字串
* @param $start 起始長度
* @param $len 擷取長度
* @param $suffix 字尾字串
*/function gbk_str($str, $start, $len,$suffix="")
$i++;
}else}}
return $tmpstr.$suffix;
}//測試案例
$str = "測試字串'abcdefg";
echo gbk_str($str,2,9,"...");
字串'abcde...
原理:
utf-8編碼的字元可能由1~3個位元組組成,
具體數目可以由第乙個位元組判斷出來。
第乙個位元組大於239小於248的,它與它之後的3個位元組組成乙個utf-8字元
第乙個位元組大於223小於240的,它與它之後的2個位元組一起組成乙個utf-8字元
第乙個位元組大於191小於224的,它與它之後的1個位元組組成乙個utf-8字元
否則第乙個位元組本身就是乙個英文本元(包括數字和一小部分標點符號)。
注意:小寫字母和半形標點等與半個高位字元寬
顯示效果:/**
* php擷取utf-8中文字串
* @param $str 被擷取的字串
* @param $start 起始長度
* @param $len 擷取長度
* @param $suffix 字尾字串
*/function utf8_str($str,$start,$len,$suffix="")
$n++;
$i++;
}elseif($value >= 192 && $value <= 223)
$n++;
$i+=2;
}elseif($value >= 224 && $value <= 239)
$n++;
$i+=3;
}elseif($value >= 240 && $value <= 247)
$n++;
$i+=4;
}else
$n += 0.5;
$i++;}}
if($n<$len)else
}//測試案例
$str = "測試字串'abcdefg";
echo utf8_str($str,2,9,"...");
字串'abcdefg...
1.要確保你的windows/system32下有php_mbstring.dll這個檔案,沒有就從php安裝目錄extensions裡拷入windows/system32裡面。
2.windows下的php目錄中找到配置檔案php.ini並開啟,搜尋mbstring.dll,找到;extension=php_mbstring.dll把前面的;號去掉
mb_substr — 獲取字串的部分
說明:string mb_substr ( string $str , int $start [, int $length = null [, string $encoding = mb_internal_encoding() ]] )
根據字元數執行乙個多位元組安全的 substr() 操作。 位置是從 str 的開始位置進行計數。 第乙個字元的位置是 0。第二個字元的位置是 1,以此類推。
引數:str
從該 string 中提取子字串。
start
str 中要使用的第乙個字元的位置。
length
str 中要使用的最大字元數。 if omitted or null is passed, extract all characters to the end of the string.
encoding
encoding 引數為字元編碼。如果省略,則使用內部字元編碼。
返回值mb_substr() 函式根據 start 和 length 引數返回 str 中指定的部分。
函式如下:
function mystr($str,$start,$len,$charset,$suffix)
$str1 = "這是乙個悲傷的故事abcdefg";
echo mystr($str1,2,9,"utf-8","...");
中英文本串擷取
substringlength 每行限制文字數量 預設是20個字元 按照英文本元長度來計算,乙個中文字元相當於兩個英文本元 replacecharacter 超出字元代替樣式 預設是 擷取字元 string substring string strinput return resultstr rep...
PHP擷取中英文本串長度
我們經常會遇到需要擷取字串 含中文漢字 長度的情況,比如標題顯示不能超過多少字元,超出的長度用 表示,以下函式可以滿足你的需求。utf 8 gb2312都支援的漢字擷取函式 cut str 字串,擷取長度,開始長度,編碼 編碼預設為 utf 8 開始長度預設為 0 function cutstr s...
php中英文本串擷取函式 包括html
這裡提供一款支援中文漢字與英文混合在一起的擷取功能,包括對html標籤等進來處理,下面我們來看看這款擷取函式吧.中英文本串擷取函式 包括html 例項 如下 function get word string,length,dot charset gbk string str replace arra...