在之前的文章中我們介紹了計算數組長度的方法,感興趣的可以點擊鏈接查看→《PHP數組學習之二維數組計算數組長度》。今天我們來看看字符串,了解一下英文字符串長度的計算方法。
PHP中用來計算字符串長度的函數主要有兩個:strlen() 和 mb_strlen() 。下面我們通過代碼示例來了解一下兩個函數是如何計算英文字符串長度的。
1、strlen()函數
<?php header("Content-type:text/html;charset=utf-8"); $str = "hello world!"; echo '字符串 “'.$str.'” 的長度為:'.strlen($str).'<br>'; ?>
strlen($string)函數只接受一個參數$string(要計算的字符串),如果該參數傳遞的值為空則返回 0。strlen()函數中,(英文狀態下的逗號)、數字、英文字母、小數點.、下劃線、空格等都只占一個字符長度。
在上例中,$str字符串包含10個英文字母、1個空格和1個英文感嘆號,共12個字符,因此輸出結果為:

但strlen()函數不適合用于計算中文字符串長度,因為在該函數中一個 GB2312 編碼的漢字占兩個字符長度,一個 UTF-8 編碼的漢字占三個字符長度。
2、mb_strlen()函數
<?php header("Content-type:text/html;charset=utf-8"); $str = "hello world!,#%&*@"; echo '字符串 “'.$str.'” 的長度為:'.mb_strlen($str).'<br>'; ?>
同樣的,mb_strlen()函數中,、數字、英文字母、小數點.、下劃線、空格、#、%、&、*、@都只占一個字符長度;但漢字只占一個字符長度。
在上例中,$str字符串包含10個英文字母、1個空格、1個逗號、6個其他英文符號,共18個字符,因此輸出結果為:

總結:
strlen() 和 mb_strlen()函數都可以用于計算英文字符串長度;平時使用strlen()就行了,但有時是中英文混合的字符串,我們就需要使用mb_strlen()了。
好了就說到這里了,有其他想知道的,可以點擊這個哦。→ →php視頻教程
最后給大家推薦閱讀一個經典課程《PHP字符串處理(玉女心經版)》,免費的~快來學習啊!
站長資訊網