Thursday, October 04, 2012

php取得字串長度的方法有兩種(怎麼有種斯斯有兩種的感覺阿)

首先檢查是否安裝了mbstring
確認的方法可以透過php -m | grep mbstring或是phpinfo頁面查看(mbstring)

再來我們來看看剛剛提到的兩種(strlen、mb_strlen)
 $str1 = '中文';
echo strlen($str1);
// 6
echo mb_strlen($str1);
// 6
(阿你不是說兩種,怎麼結果都一樣)
對阿,其實看到這結果時,我也大吃了一驚......

後來查了一下才知道原來要這樣寫
$str1 = '中文';
echo strlen($str1);
// 6
echo mb_strlen($str1, 'utf-8' );
// 2

這樣就正常啦!

參考來源:
[PHP] 中文字數計算strlen與mb_strlen的差異

No comments: