strlen與mb_strlen都是計算字符串長度的函數,但是我們一般比較常用都是strlen這個,但是還有mb_strlen。這兩個都是計算長度,但是差別在哪呢?簡單的說可以參考下面:
strlen:計算字元長度。
mb_strlen:計算字的長度。
這樣說可能不太清楚,寫個範例來說明:
<?php $str="abc"; ?> |
你會看到的結果:
字串:abc |
如果你字串用的是英文數字或是符號,你回覺得應該沒差吧!
但是如果是下面這個範例呢?
<?php $str="給我100元"; ?> |
你會看到的結果:
字串:給我100元 |
從這個例子可以看到,我用mb_strlen,以utf-8來判斷,他會計算的是多少個字。但是如果用strlen,他就會計算出12的結果(中文字3個*每個字3個字元+三個英文字)。
參考資料:
mb_strlen ( string $str [, string $encoding ] )
第一個參數:要被計算的字串。
第二個參數:參數為字元編碼。如果省略,則使用内部字元编碼。
留言列表