成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

詳解PHP用mb_string處理windows中文字符

瀏覽:2日期:2022-09-07 11:50:04

我們都知道windows中(當然是中文版),文件名和文件內容等編碼都是gbk,而我們在開發過程中,IDE里的編碼則是UTF-8,(這里不討論為什么等等問題,只考慮怎么把編碼轉變成一樣的)所以導致我寫的UTF-8編碼的正則模式字符串中的中文在gbk編碼的文件中并不能正確匹配。

一開始,我并沒有什么辦法,試過把PHP腳本文件的編碼也改成GBK,也可以用,但是想到這種方法太low了,所以找一找PHP中有沒有函數可以滿足我的需求。

這時,我想到了以前在處理windows中的文件名時用的函數iconv(),其函數原型如下:

stringiconv(string$in_charset,string$out_charset,string$str)

Performsacharactersetconversiononthestringstrfromin_charsettoout_charset.

我們常使用:

$out_charset=’utf-8’;$fileName=iconv($fileName,$out_charset,’gbk’);

來處理文件名,將文件名改從gbk改為UTF-8而內容不變。

手冊翻譯附加:

如果你在輸出字符串$out_charset后面添加//TRANSLIT即$out_charset=’utf-8//TRANSLIT’,在遇到不能轉換為UTF-8的字符時,程序會自動替換為一個相似字符的UTF-8字符; 如果你在輸出字符串$out_charset后面添加//IGNORE即$out_charset=’utf-8//IGNORE’,在遇到不能轉換為UTF-8的字符時,程序會自動跳過這個字符。 如果你什么都沒加,就在遇到不能替換成UTF-8的字符時,替換會被中斷。

但是,我在用這個函數處理時,結果卻是這樣:

詳解PHP用mb_string處理windows中文字符

意思是iconv()函數能處理的最大字符數只有64,一般的文件名大小,而我的文件內容很顯然不止64個字符。

沒有辦法,我只好再次各種翻找別的函數。

直到我發現了mb_string函數庫,這個函數庫一般都在PHP環境里集成,我們可以在phpinfo()里找到它。

詳解PHP用mb_string處理windows中文字符

mb_string函數里有一個mb_convert_encoding()函數,可以將一個字符串的編碼改變,其函數原型如下:

stringmb_convert_encoding(string$str,string$to_encoding[,mixed$from_encoding])

Convertsthecharacterencodingofstringstrtoto_encodingfromoptionallyfrom_encoding.

基原型跟iconv()函數差不多,只是它沒有對輸出函數的后綴修飾,它也沒有對字符串長度的明確限制。

而且我們看到$from_encoding是可選的,它可以自動識別源編碼。

因為找不到一個確切的無法轉碼的字符,也不知道它遇到無法轉碼的字符會怎么處理。

通過mb_convert_encoding()函數,將整個文件處理了一下,于是,問題順利解決。

最后介紹一下mb_string函數庫,它全名叫MultibyteString,它的很多方法都擴展自PHP自身的string函數庫,函數名在原函數的前面加了'mb_',這些函數除了擁有原函數的作用外,還在可選參數的最后加入了一個$encoding的可選參數,這個參數可以規定函數以什么樣的編碼方式來處理字符串。

例如strpos()函數,找到一個字符串在另一個字符串中的位置。

strpos('歡迎來訪問','問',0)返回的結果是12,因為腳本是UTF-8編碼,而將字符串轉為UTF-8編碼后,每個中文字符會占用3個字節。

而在mb_strpos()函數中,mb_strpos('歡迎來訪問','問',0,’utf-8’)則會返回4,它會將字符串當作已經轉UTF-8的狀態執行。

而mb_strpos('歡迎來訪問','問',0,’gbk’)會返回6

以上就是詳解PHP用mb_string處理windows中文字符的詳細內容,更多關于PHP用mb_string處理windows中文字符的資料請關注好吧啦網其它相關文章!

標簽: PHP
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
99成人在线| 欧美美女bb生活片| 99国产精品一区| 亚洲一区日本| 日韩一级片网址| 亚洲第一狼人社区| 欧美不卡福利| 欧美精品色综合| 一区二区三区电影在线播| jvid福利写真一区二区三区| 一本色道久久综合亚洲aⅴ蜜桃 | 成人黄页毛片网站| 性欧美暴力猛交另类hd| 在线不卡中文字幕播放| 久久青草欧美一区二区三区| 一区二区三区色| 波多野结衣欧美| 欧洲视频一区二区| 亚洲视频综合在线| 成人av在线影院| 可以免费看不卡的av网站| 欧美国产综合一区二区| 国产一区在线观看麻豆| 亚洲一区图片| 国产精品福利一区| 9l国产精品久久久久麻豆| 国产欧美日韩亚洲| 国产精品免费视频观看| 顶级嫩模精品视频在线看| 91福利在线播放| 最新日韩在线视频| 91网站在线播放| 日韩欧美123| 国产一区亚洲一区| 日本高清不卡视频| 亚洲成人av福利| 国产欧美高清| 国产欧美日韩伦理| 国产欧美一区二区精品性色超碰| 国产自产v一区二区三区c| 一本一道波多野结衣一区二区| 中文字幕在线观看一区| av亚洲精华国产精华| 欧美人与性动xxxx| 亚洲国产精品尤物yw在线观看| 国产精品一级片| 欧美日韩一区二| 精品女同一区二区| 国产一区二区三区在线观看免费| 色久优优欧美色久优优| 亚洲香肠在线观看| 亚洲国产免费看| 精品欧美乱码久久久久久| 国产福利91精品一区| 欧美日韩一级视频| 日韩影院免费视频| 免费在线亚洲欧美| 亚洲成av人片一区二区三区| 99精品视频免费| 国产精品国产自产拍高清av王其| 不卡电影一区二区三区| 欧美体内she精视频| 日本成人在线电影网| 日本道在线观看一区二区| 一区二区欧美视频| 国产日韩综合| 亚洲影视在线观看| 亚洲一区二区成人| 午夜精品久久久久久不卡8050| 亚洲视频导航| 亚洲视频一区二区免费在线观看| 国产精品多人| 亚洲欧洲av一区二区三区久久| 欧美搞黄网站| 久久精品亚洲精品国产欧美| 成人性生交大片免费看视频在线| 日韩精品影音先锋| 97久久精品人人澡人人爽| www国产成人| 成人午夜av影视| 国产亚洲人成网站| 成人在线综合网| 日韩女优毛片在线| 99精品视频一区| 中文字幕免费一区| 亚洲国产高清视频| 亚洲精品国产一区二区三区四区在线 | www.欧美精品一二区| 精品国产91久久久久久久妲己 | 国语精品中文字幕| 欧美亚洲免费| 亚洲精品高清视频在线观看| 国产精品久久久免费| 日韩vs国产vs欧美| 日韩欧美国产综合在线一区二区三区| 成人免费毛片嘿嘿连载视频| 精品99一区二区三区| 欧美激情1区2区| 中文字幕在线视频一区| 国产精品美女xx| 日韩电影在线观看一区| 亚洲激情一区| 免费精品视频在线| 91精品国产免费久久综合| 成人免费观看视频| 欧美激情在线看| 在线免费观看一区二区三区| 亚洲最大成人网4388xx| 在线观看免费视频综合| 国产成人在线视频网站| 91精品福利在线一区二区三区 | 亚洲地区一二三色| 麻豆亚洲精品| 久久99久久久久| 精品欧美乱码久久久久久1区2区| 国产在线精品二区| 午夜精品福利在线| 欧美久久久久中文字幕| 成人性生交大合| 国产午夜一区二区三区| 一区二区三区免费看| 日韩激情一区二区| 欧美伊人久久大香线蕉综合69| 日本美女一区二区三区视频| 色8久久人人97超碰香蕉987| 顶级嫩模精品视频在线看| 91精品综合久久久久久| 91碰在线视频| 日韩一区中文字幕| 欧美日韩一本到| 91视频在线观看| 亚洲自拍欧美精品| 欧美日韩色一区| 成人激情小说乱人伦| 日韩欧美中文字幕精品| 国产精品大片| 亚洲一区二三区| 久久久久国产一区二区| 国产成人亚洲综合色影视| 日韩写真欧美这视频| 欧美午夜精品理论片a级大开眼界 欧美午夜精品久久久久免费视 | 国产午夜精品一区二区三区嫩草 | 羞羞答答国产精品www一本| 国产精品99久久久久| 亚洲欧美日本在线| 6080国产精品一区二区| 一区二区高清视频| 东方欧美亚洲色图在线| 亚洲国产视频在线| 日韩丝袜情趣美女图片| 中文久久精品| 成人av电影在线播放| 性做久久久久久免费观看| 2020国产成人综合网| 一本色道亚洲精品aⅴ| 91在线视频官网| 婷婷综合另类小说色区| 久久精品视频免费| 一本大道久久a久久精品综合| 女主播福利一区| 久久电影网站中文字幕| 日韩毛片高清在线播放| 色噜噜狠狠色综合欧洲selulu| 91色视频在线| 久久狠狠亚洲综合| 久久精品男女| 国产农村妇女精品| 欧美二区乱c少妇| 国产欧美另类| 色综合天天综合狠狠| 免费在线观看一区| 亚洲三级免费观看| 久久中文娱乐网| 欧美精品在线观看一区二区| 麻豆精品网站| 亚洲福利精品| 99re视频精品| 国产精品一区二区在线看| 亚洲国产乱码最新视频| 国产精品日产欧美久久久久| 色噜噜夜夜夜综合网| 黄色欧美日韩| 国产精品自拍三区| www精品美女久久久tv| 欧美电影在线免费观看| 久久不射中文字幕| 亚洲第一在线| 热久久久久久久| 久久久久国产免费免费| 制服.丝袜.亚洲.另类.中文| 色偷偷久久人人79超碰人人澡| 亚洲区一区二区三区| 91麻豆swag| 丁香网亚洲国际| 国产麻豆一精品一av一免费| 爽好多水快深点欧美视频| 一区二区三区欧美日| 中文字幕一区在线观看| www激情久久| 欧美一区二区三区免费在线看|