1. 程式人生 > >php取含有中文的字串的真實長度(一箇中文算兩個字元)

php取含有中文的字串的真實長度(一箇中文算兩個字元)

同一段PHP編碼

$str = "三知sunchis開發網";  
echo $str;
echo "<br />";
echo "strlen:".strlen($str)."<br>";               //結果:22  
echo "mb_strlen:".mb_strlen($str,"UTF8")."<br>";     //結果:12  
$strlen = (strlen($str)+mb_strlen($str,"UTF8"))/2;  
echo "strlen+mb_strlen".$strlen; 

Utf-8頁面編碼下執行結果:

三知sunchis開發網
strlen:22
mb_strlen:12
strlen+mb_strlen17

Gb2312頁面編碼下執行結果:

三知sunchis開發網
strlen:17
mb_strlen:14
strlen+mb_strlen15.5

由此可以得出這樣結論:

PHP下獲取字串的真實長度

Gb2312編碼:strlen($str)

Utf-8編碼:(strlen($str)+mb_strlen($str,"UTF8"))/2