數(shù)據(jù)庫存儲(chǔ):PHP出現(xiàn)亂碼怎么解決 附PHP亂碼的解決方法
【溫馨提示】本文源于網(wǎng)絡(luò)收集整理,不代表本站觀點(diǎn)!若有了解“數(shù)據(jù)庫存儲(chǔ)”等有關(guān)服務(wù)器、云主機(jī)租用、托管、配置、價(jià)格問題,請?jiān)诰€咨詢YINGSOO客服,良心推薦,按需選配!
【主機(jī)價(jià)格】馬來西亞云服務(wù)器優(yōu)惠 | 荷蘭云服務(wù)器優(yōu)惠 | 美國站群服務(wù)器優(yōu)惠
【內(nèi)容推薦】香港云服務(wù)器哪家好?如何選擇好用的香港云服務(wù)器
一,出現(xiàn)亂碼的原因分析
1,保存文件時(shí)候,文件有自己的文件編碼,就是漢字,或者其他國語言,以什么編碼來存儲(chǔ)
2,輸出的時(shí)候,要給內(nèi)容指定編碼,如以網(wǎng)頁的形勢輸入時(shí)
ml; charset=utf8″ />
3,從數(shù)據(jù)庫取出數(shù)據(jù)時(shí),搞不清楚數(shù)據(jù)庫,設(shè)置的字符集
4,以漢字為例,漢字本來也有編碼的,一個(gè)漢字gbk要二個(gè)字符,而utf8要三個(gè)字符
上面說了有可能引起亂碼的潛在原因,我現(xiàn)在把它們排列組合一下。
第一種情況,保存文件和顯示編碼的不一致
假如保存文件時(shí)候,你用的utf8編碼,網(wǎng)頁輸出時(shí),你設(shè)置的是gbk編碼,這樣就會(huì)出現(xiàn)亂碼,
第二種情況,保存文件和數(shù)據(jù)庫的存儲(chǔ)的字符不一致
假如,保存文件的編碼和網(wǎng)頁顯示的編碼一樣時(shí),還是出現(xiàn)亂碼了,例如,你保存文件時(shí),用的utf8編碼,而你數(shù)據(jù)庫用的是gb2312字符集來存儲(chǔ)數(shù)據(jù)。
第三種情況,已經(jīng)亂碼了,你還認(rèn)為沒有
當(dāng)你發(fā)現(xiàn)出現(xiàn)亂碼時(shí),去改變保存文件的編碼的時(shí)候,utf8情況是好的,當(dāng)你把它換成gbk的話就亂碼了,但是你還以為是好的。這也是出現(xiàn)亂碼的原因。這種情況會(huì)經(jīng)常出現(xiàn)。
第四種情況,數(shù)據(jù)庫里面本來就是亂碼
數(shù)據(jù)的字符集,保存文件的編碼,網(wǎng)頁顯示編碼都一樣了,還是出現(xiàn)亂碼了,這種情況大多數(shù),是數(shù)據(jù)入數(shù)據(jù)庫的時(shí)候,就亂碼了,這種情況是比較麻煩的。
二,我解決亂碼的方法,百試不爽
我把這種方法起個(gè)名子叫庖丁解牛法。哈哈。數(shù)據(jù)庫,保存文件編碼,顯示時(shí)候的編碼必須一致,并且以數(shù)據(jù)庫為準(zhǔn)
第一種,數(shù)據(jù)庫和保存文件的編碼是utf8,網(wǎng)頁顯示呢是gb2312,這個(gè)時(shí)候,我們就要改顯示編碼了
第二種,數(shù)據(jù)庫和網(wǎng)頁顯示都是utf8,保存文件用的是gb2312,這個(gè)時(shí)候呢,要注意一種,直接把保存文件的編碼改過,是不行的,在改編碼之前,把文件的內(nèi)容先COPY一下,編碼改過以后,在把剛才COPY的內(nèi)容粘回去,這樣就OK了.
第三種,數(shù)據(jù)庫用的utf8,保存文件和顯示編碼是gb2312,這個(gè)時(shí)候呢,你可以用程序自帶的函數(shù)把從數(shù)據(jù)庫取出的數(shù)據(jù)進(jìn)行一下轉(zhuǎn)碼把,utf8轉(zhuǎn)成gb2312這樣就不用去改變文件自己的編碼了,以及顯示編碼了。以php為例,mb_convert_encoding($string,”gb2312″,”utf8″);
第四種,數(shù)據(jù)庫亂碼,是數(shù)據(jù)錄入時(shí)候,數(shù)據(jù)本身和數(shù)據(jù)庫存儲(chǔ)編碼不一樣造成的。例如:數(shù)據(jù)庫的存儲(chǔ)編碼是utf8,在數(shù)據(jù)入庫的時(shí)候,加上一個(gè)mysql_query(“set names utf8;”);
三,亂碼表現(xiàn)的形勢
亂碼的表現(xiàn)呢,我是遇到過二個(gè),
1)就是出現(xiàn)在的字體亂碼了,變成怪七怪八的字符了
2)就是直接是空白頁面,查看源碼呢,什么都沒有,像這種情況,有的時(shí)候,很想起是因?yàn)槭莵y碼造成的。右擊頁面在,查看屬性,改一下編碼就知道是不是因?yàn)閬y碼引起的空白頁面了。
YINGSOO,國際數(shù)據(jù)中心綜合服務(wù)提供商,專注高品質(zhì)、企業(yè)級(jí)海外服務(wù)器租用/托管服務(wù),擁有ISP牌照、實(shí)體公司、專業(yè)團(tuán)隊(duì)、9年經(jīng)驗(yàn),7x24x365全天候服務(wù),3天免費(fèi)試用,品質(zhì)保障、值得信賴!全國統(tǒng)一服務(wù)熱線:400-630-3752
熱門搜索:【云專線 外網(wǎng)】【山西長城計(jì)算機(jī) 數(shù)據(jù)中心】【日本服務(wù)器】【動(dòng)態(tài)主機(jī)安全防護(hù)】【離線云主機(jī)怎么配置yum源】【rust無法進(jìn)入服務(wù)器】【掛直播需要云服務(wù)器多大的合適】【xdai網(wǎng)絡(luò)充值】【短視頻網(wǎng)站服務(wù)器成本】【香港空間】【租個(gè)服務(wù)器當(dāng)相冊】【服務(wù)器按業(yè)務(wù)用途分】【歐普張青青管道安裝】【同一局域網(wǎng)】【服務(wù)器網(wǎng)站】【超融合中某臺(tái)服務(wù)器壞了】【海外服務(wù)器SSR配置】【美國母雞服務(wù)器】【服務(wù)器機(jī)柜】【香港服務(wù)器建立網(wǎng)站】【sr2ll】【centos adsl撥號(hào)】【服務(wù)器管理成本】【waf服務(wù)提供以下哪些功能】【100M大帶寬便宜服務(wù)器】【同一個(gè)網(wǎng)站】【chia錢包導(dǎo)出元信息】【抗攻擊檢測工具】【linux chia指南】
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。