利用PHP函數(shù)計算中英文字符串長度的方法
本文實例講述了利用PHP函數(shù)計算中英文字符串長度的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:
一般來說大家知道英文字符占一個字節(jié),而中文字符gbk占兩個字符,utf8占三個字符,很多人印象中php計算字符串長度就是strlen()函數(shù),其實不然,它計算的是字節(jié)的長度而非字符的長度,那么如何獲取一個字符串中字符的長度呢?還有有mb_strlen().
具體代碼如下:
echo strlen($str); //3*1+3*3=12
echo mb_strlen($str, 'gb2312'); //3*1+3*2=9
echo mb_strlen($str, 'utf-8'); //6
可惡的是,mb系列的函數(shù)并不是PHP核心函數(shù),默認沒有開啟的,還有一個超簡單的方法,通過正則將字符串分解為字符個體,計算字符的個數(shù)即為字符串的長度,代碼如下:
function _strlen($str)
{
preg_match_all("/./us", $str, $matches);
return count(current($matches));
}
echo _strlen("PHP點點通"); //6
?>
希望本文所述對大家的PHP程序設計有所幫助。
- PHP字符串長度計算 - strlen()函數(shù)使用介紹
- php中計算中文字符串長度、截取中文字符串的函數(shù)代碼
- php自定義函數(shù)實現(xiàn)統(tǒng)計中文字符串長度的方法小結
- 最準確的php截取字符串長度函數(shù)
- PHP中preg_match函數(shù)正則匹配的字符串長度問題
- php strlen mb_strlen計算中英文混排字符串長度
- 詳解PHP中strlen和mb_strlen函數(shù)的區(qū)別
- 淺析PHP中strlen和mb_strlen的區(qū)別
- 自己寫的php中文截取函數(shù)mb_strlen和mb_substr
- PHP中strlen()和mb_strlen()的區(qū)別淺析
- php中strlen和mb_strlen用法實例分析
- php常用字符串長度函數(shù)strlen()與mb_strlen()用法實例分析
相關文章
PHP數(shù)組的交集array_intersect(),array_intersect_assoc(),array_inte
求兩個數(shù)組的交集問題可以使用array_intersect(),array_inersect_assoc,array_intersect_key來實現(xiàn),其中array_intersect()函數(shù)是求兩個數(shù)的交集2011-05-05
php中cURL?error?60:SSL?certificate?problem:?unable?to?
PHP中cURL錯誤60通常表示SSL證書問題,即無法獲取本地頒發(fā)機構證書,這通常是由于cURL無法驗證遠程服務器的SSL證書導致的,本給大家介紹了如何解決php中cURL?error?60,需要的朋友可以參考下2023-12-12

