首頁 >後端開發 >PHP問題 >php如何判斷幾個漢字

php如何判斷幾個漢字

藏色散人
藏色散人原創
2021-06-11 09:07:173162瀏覽

php判斷幾個漢字的方法:先建立一個PHP範例檔;然後用「mb_strimwidth($post_excerpt,0,240,'...','utf-8');」方法判斷統計中文字數即可。

php如何判斷幾個漢字

本文操作環境:windows7系統、PHP7.1版,DELL G3電腦

php如何判斷幾個漢字? PHP中如何正確統計中文字數

PHP 中如何正確統計中文字數?這是困擾我很久的問題,PHP 中有很多函數可以計算字串的長度,例如下面的例子,分別使用了strlen,mb_strlen,mb_strwidth 這個三個函數去測試統計字串的長度,看看把中文算成幾個字節:

echo strlen("你好ABC") . "";
# 输出 9
echo mb_strlen("你好ABC", 'UTF-8') . "";
# 输出 5
echo mb_strwidth("你好ABC") . "";
#输出 7

從上面的測試,我們可以看出:strlen 把中文字符算成3 個字節,mb_strlen 不管中文還是英文,都算1 個字節,而mb_strwidth 則把中文算成2 個字節,所以mb_strwidth 才是我們想要的:中文2 個字節,英文1 個位元組。

同樣截取字串也建議使用mb_strimwidth,也是按照中文2 個字節,英文1 個字節方式計算之後的,並且如果字數超過截取的要求,這個函數還可以在最後面自動添加'…'。

mb_strimwidth($post_excerpt,0,240,'...','utf-8');

注意,最後加上‘utf-8’編碼參數,可以避免中文截取亂碼的問題。

推薦學習:《PHP影片教學

以上是php如何判斷幾個漢字的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn