PHP輸出中文亂碼的解決方法


最近在windows上發現PHP程序中輸出來的中文有亂碼的情況。

看了很多帖子資料說可以在頁面上添加:

http://www.cnblogs.com/leandro/archive/2008/04/21/1368517.html
用echo輸出的中文顯示成亂碼, 其實應該是各種服務器腳本都會遇到這個問題, 根本還是編碼問題, 一般來說出於編碼兼容考慮大多的頁面都將頁面字符集定義為utf
-8 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 這時候要正常顯示中文需要轉化一下編碼方式,比如 echo iconv("GB2312","UTF-8",'中文');就不會亂碼了 還有其他方法,比如 在php的echo前面加入header("Content-Type:text/html;charset=gb2312"); 當然簡體中文頁面也可以干脆地, 把<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />中的UTF-8改成gb2312 實際中遇見奇怪的現象, 在本機服務器上正常顯示的頁面,傳上服務器就echo出來亂碼, 沒仔細琢磨過這個緣由,因為通過iconv函數GB2312、UTF-8換換位置重新編碼下就正常了, 不過估計肯定是APACHE,更確切說是PHP服務端的設置不同造成的, 看看PHP.INI應該就能解決。

在每個頁面添加 echo iconv("GB2312","UTF-8",'中文');或者<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />會比較痛苦。

最后看到可能是php.ini文件配置問題,就打開php.ini文件,找到 ;default.charset="UTF-8"--->default.charset="UTF-8" 把前面的分號去掉(去掉注釋),重啟apache服務,刷新頁面,中文顯示正常。

再次記錄下,希望能幫到遇到同樣問題的朋友!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM