本文目錄一覽:
php 有關utf-8亂碼的問題
服務器上用了別的編碼,應該是windows的服務器吧?有可能是GBK或者GB2312編碼。
兩種方法解決此問題。
1、先在本地把所有文件都換成服務器的編碼,然後再傳上去;此法,你的php編碼需要與服務器上的數據庫編碼一致,也既有可能是那兩種編碼。
2、修改服務器上的編碼為utf-8。此方法需要你有足夠的權限去修改服務器上apache或者IIS編碼。如果修改編碼成功,你的數據庫也不用換編碼。
如果保持你的網頁編碼不變,那就要修改mysql編碼,即像stjdydayou
所言,執行數據庫數據插入、更改、查詢時,執行一條查詢語句:
mysql_query(“set
names
‘utf-8′”);
之所有用utf-8編碼,是因為你的php編碼目前為utf-8.
PHP 輸出簡單的中文 亂碼問題
解決php中中文亂碼問題方法
php文件本身的編碼與網頁的編碼應匹配
a. 如果欲使用gb2312編碼,那麼php要輸出頭:header(“Content-Type: text/html; charset=gb2312″),靜態頁面添加meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″,所有文件的編碼格式為ANSI,可用記事本打開,另存為選擇編碼為ANSI,覆蓋源文件。
b. 如果欲使用utf-8編碼,那麼php要輸出頭:header(“Content-Type: text/html; charset=utf-8″),靜態頁面添加meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″,所有文件的編碼格式為utf-8。保存為utf-8可能會有點麻煩,一般utf-8文件開頭會有BOM,如果使用session就會出問題,可用editplus來保存,在editplus中,工具-參數選擇-文件-UTF-8簽名,選擇總是刪除,再保存就可以去掉BOM信息了。
php本身不是Unicode的,所有substr之類的函數得改成mb_substr(需要裝mbstring擴展);或者用iconv轉碼。
如果你的HTML文件文件出現了亂碼問題,那麼你可以在head標籤裡面加入UTF8編碼(國際化編碼):UTF-8是沒有國家的編碼,也就是獨立於任何一種語言,任何語言都可以使用的。
擴展資料:
解決PHP 輸出簡單的中文 亂碼問題的其他方法:
在php的echo前面加入header(“Content-Type:text/html;charset=gb2312”)
把meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ /中的UTF-8改成gb2312
參考資料:
百度百科-PHP
如何解決PHP在utf-8編碼下中文顯示亂碼問題?
如果php文件已經在頭部設置編碼格式為utf-8,在運行的時候還出現亂碼問題,可能是由於文件編碼格式不匹配或者頭部有bom信息輸出導致亂碼。解決辦法:
設置保存文件編碼格式為utf-8;
去掉文件頭部bom信息;
如何解決PHP中文亂碼問題
PHP中文亂碼主要是編碼不對,存在以下兩種情況,你以此檢查一下 ,改對編碼就行了
1、 php文件本身的編碼與網頁的編碼應匹配
a. 如果欲使用gb2312編碼,那麼php要輸出頭:header(“Content-Type: text/html; charset=gb2312″),靜態頁面添加meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″,所有文件的編碼格式為ANSI,可用記事本打開,另存為選擇編碼為ANSI,覆蓋源文件。
b. 如果欲使用utf-8編碼,那麼php要輸出頭 :header(“Content-Type: text/html; charset=utf-8″),靜態頁面添加meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″,所有文件的編碼格式為utf-8。保存為utf-8可能會有點麻煩,一般utf-8文件開頭會有BOM,如果使用 session就會出問題,可用editplus來保存,在editplus中,工具-參數選擇-文件-UTF-8簽名,選擇總 是刪除,再保存就可以去掉BOM信息了。
2. php本身不是Unicode的,所有substr之類的函數得改成mb_substr(需要裝mbstring擴展);或者用iconv轉碼。
PHP中文亂碼怎麼解決?
最好最快的解決辦法就是使頁面申明的編碼與數據庫內部編碼一致,如果頁面申請的編碼與數據庫內部的編碼不一致時,那就設定連接編碼。Mysql_query(“set
names
***”).
php文件本身的編碼與網頁的編碼應匹配,如果欲使用gb2312編碼,那麼php要輸出頭
代碼如下:
header(“Content-type:text/html;charset=gb2312”)
靜態頁面添加
代碼如下:
meta
http-equiv=”Content-type”content=”text/html;
charset=gb2312”,所有文件的編碼格式為ANSI,可用記事本打開,另存為選擇編碼為ANSI,覆蓋源文件。
如果欲使用uft-8編碼,那麼php要輸出頭
代碼如下:
header(“Content-type:text/html;
charset=utf-8”),
靜態頁面添加
代碼如下:
meta
http-equiv=”Content-type”content=”text/html;
charset=utf-8”,
所有文件的編碼格式為utf-8.保存為utf-8可能會有點麻煩,一般utf-8開頭會有BOM,如果使用
Session就會出現問題,可用editplus軟件來保存。
我也是從這裡得知:
原創文章,作者:DETRG,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/130054.html