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

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

看了不少帖子資料說能夠在頁面上添加:html

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函數GB23十二、UTF-8換換位置從新編碼下就正常了, 不過估計確定是APACHE,更確切說是PHP服務端的設置不一樣形成的, 看看PHP.INI應該就能解決。

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

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

再次記錄下,但願能幫到遇到一樣問題的朋友!服務器

相關文章
相關標籤/搜索