亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

淺析PHP中strlen和mb_strlen的區別

2024-05-04 23:25:28
字體:
來源:轉載
供稿:網友
在php中常見的計算字符串長度的函數有:strlen和mb_strlen.當字符全是英文字符的時候,兩者是一樣。這里主要比較一下,中英文混排的時候,兩個計算結果。
 
 

在PHP中,strlen與mb_strlen是求字符串長度的函數,但是對于一些初學者來說,如果不看手冊,也許不太清楚其中的區別。
下面通過例子,講解這兩者之間的區別。

先看例子:

<?php //測試時文件的編碼方式要是UTF8 $str='中文a字1符'; echo strlen($str).'<br>';//14 echo mb_strlen($str,'utf8').'<br>';//6 echo mb_strlen($str,'gbk').'<br>';//8 echo mb_strlen($str,'gb2312').'<br>';//10 ?> 

結果分析:在strlen計算時,對待一個UTF8的中文字符是3個長度,所以“中文a字1符”長度是3*4+2=14,在mb_strlen計算時,選定內碼為UTF8,則會將一個中文字符當作長度1來計算,所以“中文a字1符”長度是6 .

利用這兩個函數則可以聯合計算出一個中英文混排的串的占位是多少(一個中文字符的占位是2,英文字符是1)

echo (strlen($str) + mb_strlen($str,'UTF8')) / 2; 

例如 “中文a字1符” 的strlen($str)值是14,mb_strlen($str)值是6,則可以計算出“中文a字1符”的占位是10.

echo mb_internal_encoding(); 

PHP內置的字符串長度函數strlen無法正確處理中文字符串,它得 到的只是字符串所占的字節數。對于GB2312的中文編碼,strlen得到的值是漢字個數的2倍,而對于UTF-8編碼的中文,就是3倍的差異了(在 UTF-8編碼下,一個漢字占3個字節)。

采用mb_strlen函數可以較好地解決這個問題。mb_strlen的用法和 strlen類似,只不過它有第二個可選參數用于指定字符編碼。例如得到UTF-8的字符串$str長度,可以用 mb_strlen($str,'UTF-8')。如果省略第二個參數,則會使用PHP的內部編碼。內部編碼可以通過 mb_internal_encoding()函數得到。

需要注意的是,mb_strlen并不是PHP核心函數,使用前需要確保在php.ini中加載了php_mbstring.dll,即確保“extension=php_mbstring.dll”這一行存在并且沒有被注釋掉,否則會出現未定義函 數的問題。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品av免费在线观看| 亚洲午夜国产成人av电影男同| 亚洲免费电影在线观看| 自拍视频国产精品| 三级精品视频久久久久| 欧美精品videos性欧美| 亚洲精品日韩欧美| 日韩一区av在线| 成人免费观看49www在线观看| 亚洲乱码国产乱码精品精天堂| 91高清在线免费观看| 日韩视频精品在线| 91精品久久久久久久久久久久久久| 18久久久久久| 国产精品日韩在线一区| 欧美性xxxxx| 欧美最猛性xxxxx免费| 日韩人体视频一二区| 性色av一区二区咪爱| 欧美国产日韩视频| 97国产精品免费视频| 国产精品久久中文| 亚洲美女激情视频| 97在线精品视频| 精品美女久久久久久免费| 久久精品亚洲热| 亚洲国产精品人人爽夜夜爽| 色先锋资源久久综合5566| 亚洲福利视频网站| 91精品视频专区| 91tv亚洲精品香蕉国产一区7ujn| 亚洲老板91色精品久久| 亚洲精品v天堂中文字幕| 日韩hd视频在线观看| 久久久亚洲福利精品午夜| 久久久国产精品亚洲一区| 国产精品久久久久久久久粉嫩av| 91精品国产电影| 国产精品丝袜一区二区三区| 91精品国产一区| 国产精品自产拍高潮在线观看| 欧美性感美女h网站在线观看免费| 亚洲乱码一区av黑人高潮| 91av国产在线| 成人h视频在线观看播放| 亚洲精品动漫久久久久| 97av在线视频免费播放| 国产精品视频播放| 久久久久九九九九| 国产日韩精品视频| 国产亚洲精品成人av久久ww| 国产欧美 在线欧美| 欧美疯狂做受xxxx高潮| 国产999精品视频| 在线观看欧美成人| 国产精品99久久久久久久久| 国产精品美女久久久免费| 国产精品69久久| 国产精品一区久久| 欧美片一区二区三区| 欧美视频中文在线看| 8050国产精品久久久久久| 高清欧美性猛交| 性欧美xxxx交| 日韩精品欧美国产精品忘忧草| 91青草视频久久| 国产精品成久久久久三级| 97久久精品人搡人人玩| 一夜七次郎国产精品亚洲| 久久久久久久国产精品视频| 欧美激情免费观看| 日韩的一区二区| 成人在线国产精品| 国产日韩专区在线| 国产亚洲精品久久久久久777| 国产日韩欧美视频在线| 国产免费成人av| 精品亚洲男同gayvideo网站| 亚洲韩国欧洲国产日产av| 美女视频黄免费的亚洲男人天堂| 性色av一区二区三区免费| 亚洲国产高潮在线观看| 亚洲综合一区二区不卡| 91久久久久久久| 成人免费激情视频| 成人高清视频观看www| 亚洲国内高清视频| 日本精品久久中文字幕佐佐木| 国模极品一区二区三区| 国产精品偷伦一区二区| 日韩精品免费在线| 日本精品免费一区二区三区| 日韩精品视频中文在线观看| 2020欧美日韩在线视频| 国产欧美精品va在线观看| 亚洲第一福利网| 91探花福利精品国产自产在线| 日韩欧美一区二区三区| 亚洲美女又黄又爽在线观看| 国产亚洲欧美视频| 亚洲精品中文字幕女同| 92国产精品久久久久首页| 91久久精品国产91性色| 精品亚洲男同gayvideo网站| 日韩av在线高清| 亚洲欧美变态国产另类| 日韩精品电影网| 久久久久久综合网天天| 26uuu亚洲国产精品| 国产精品av免费在线观看| 亚洲福利视频二区| 欧美另类老女人| 国产盗摄xxxx视频xxx69| 日韩av电影中文字幕| 亚洲激情在线观看视频免费| 日韩精品在线观看一区二区| 精品人伦一区二区三区蜜桃免费| 亚洲免费av电影| 日韩成人av一区| 亚洲高清一区二| 九九热精品视频国产| 亚洲人成在线观看网站高清| 中文字幕日韩av电影| 日韩欧美国产中文字幕| 欧美第一黄网免费网站| 亚洲综合社区网| 亚洲人成人99网站| 欧美激情视频在线观看| 狠狠色香婷婷久久亚洲精品| 国产综合福利在线| 亚洲网站视频福利| 不卡毛片在线看| 成人福利视频网| 孩xxxx性bbbb欧美| 中文字幕日韩欧美在线视频| 色爱精品视频一区| 久久99热这里只有精品国产| 欧美大奶子在线| 国产精品一区二区在线| 久久久精品影院| 亚洲色图色老头| 91九色精品视频| 在线观看精品自拍私拍| 精品国产一区二区三区在线观看| 九色精品美女在线| 欧美日韩一区二区免费视频| 亚洲色图美腿丝袜| 国产99久久精品一区二区永久免费| 成人伊人精品色xxxx视频| 精品久久久视频| 国产日韩欧美夫妻视频在线观看| 国产欧美一区二区白浆黑人| 亚洲美女在线视频| 97在线视频精品| 国产精品入口夜色视频大尺度| 精品露脸国产偷人在视频| 亚洲一区二区三区久久| 久久精品99无色码中文字幕| 亚洲美女激情视频| 日韩欧美aaa| 国产欧美一区二区三区视频| 国产精品wwwwww| 69久久夜色精品国产7777| 日韩大陆毛片av|