標籤:archive php .com 輸出 meta www har hive text
最近在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服務,重新整理頁面,中文顯示正常。
再次記錄下,希望能幫到遇到同樣問題的朋友!
PHP輸出中文亂碼的解決方案(轉載)