利用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+mysql+ajax實現(xiàn)單表多字段多關鍵詞查詢的方法
這篇文章主要介紹了php+mysql+ajax實現(xiàn)單表多字段多關鍵詞查詢的方法,涉及php基于ajax的數(shù)據庫查詢、表格操作等相關技巧,需要的朋友可以參考下2017-04-04php中自定義函數(shù)dump查看數(shù)組信息類似var_dump
本文為大家介紹下在php中自定義函數(shù)dump查看數(shù)組信息,具體示例如下,希望對大家有所幫助2014-01-01PHP中使用crypt()實現(xiàn)用戶身份驗證的代碼
在開發(fā)PHP應用中如果不想自己開發(fā)新的加密算法,還可以利用PHP提供的crypt()函數(shù)來完成單向加密功能2012-09-09