一.HTML頁面轉UTF-8編碼問題
1.在head後,title前到場一行:
<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
挨次不能錯,一定要在
顯示的標題有多是亂碼!
2.html檔編碼問題:
點擊編輯器的功能表:“檔”->“另存為”,可以看到當前檔的編碼,確保檔編碼為:UTF-8,
如果是ANSI,需要將編碼改成:UTF-8翻譯
3.HTML文件頭BOM問題:
將檔從其他的編碼轉換成UTF-8編碼時,有時候會在檔的最起頭加上一個BOM標籤,
在個BOM標籤可能會致使流覽器在顯示中文的時刻呈現亂碼。
刪除這個BOM標籤的方式:
1.可以用Dreamweaver打開檔,並從頭留存,便可以去除BOM標籤!
2.可以用EditPlus打開檔,並在功能表“首選項”->“檔”->"UTF-8標識",設置為:“總是刪除簽名”,
然後留存檔,便可以去除BOM標籤!
4.WEB伺服器UTF-8編碼問題:
假如
請查抄你的所利用的WEB伺服器的編碼問題
如果你利用的是Apache,請將設定檔裡的:charset 設成:utf-8(這裡僅列出方式,具體魄式請參考apache的設定檔)
假如你使用的是Nginx,請將nginx.conf裡的:charset 設成 utf-8,
具體找到 "charset gb2312;"或近似的語句,改成:“charset utf-8;”。
二.PHP頁面轉UTF-8編碼問題
1.在代碼開始出插足一行:
header("Content-Type: text/html;charset=utf-8");
2.PHP檔編碼問題
點擊編纂器的功能表:“檔”->“另存為”,可以看到當前檔的編碼,確保檔編碼為:UTF-8,
假如是ANSI,需要將編碼改成:UTF-8翻譯
3.PHP文件頭BOM問題:
PHP檔一定弗成以有BOM標籤
否則,會泛起session不能利用的情形,並有雷同的提示:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
這是因為,在履行session_start() 的時候,全部頁面不克不及有輸出,然則當由於前PHP頁面存在BOM標籤,
PHP把這個BOM標籤當成是輸出了,所以就失足了!
所以PHP頁面一定要刪除BOM標籤
刪除這個BOM標籤的方式:
1.可以用Dreamweaver打開檔,並從新保留,便可以去除BOM標籤!
2.可以用EditPlus打開檔,並在功能表“首選項”->“檔”->"UTF-8標識",設置為:“老是刪除簽名”,
然後留存檔,便可以去除BOM標籤!
4.PHP以附件情勢留存檔的時刻,UTF-8編碼問題:
PHP以附件情勢保存檔,檔案名必需是GB2312編碼,
不然,若是檔案名中有中文的話,將是顯示亂碼:
假如
需要將檔案名變數由UTF-8轉成GB2312:
iconv("UTF-8", "GB2312", "$filename");
5.截斷顯示文章題目時,呈現亂碼或“?”問號的問題:
一般文章題目很長的時辰,會顯示一部份標題,會對文章題目進行截斷,
由於一個UTF-8編碼花樣的中文字元會佔用3個字元寬度,
截取標題的時刻,有時會只截取到一個中文字元的1個字元或2字元寬度,
沒截取完全,將泛起亂碼或“?”問號的情形,
用下面的函數截取標題,就不會有問題:
2.用PHP讀寫資料庫
在毗連資料庫之後:
[hide]$connection = mysql_connect($host_name翻譯社 $host_user, $host_pass);
加入兩行:
題目/編碼體式格局」頁面屬性選項可以讓您憑據撰寫網頁所利用的說話,指定專屬的文件編碼體例類型,以及針對該編碼方式類型,指定所要利用的 Unicode 標準化格式。
複製代碼代碼如下:
若PHP程式在碰到繁體中文顯示網頁時,泛起亂碼的解決方法:
可以遵照以下步調下去一一問題排遣,
1.搜檢php.ini文件裡面的設定
php.ini路徑:C:\Windows\php.ini
搜索到default_charset以後,將文件內容改為
default_charset="utf-8"
並將前面的分號";"刪除
若利用big5則將utf-8改為big5
2.檢查meta標籤
<meta http-equiv="content-type" content="text/html; charset=utf-8">
若利用big5則將utf-8改為big5
3.檢查my.ini文件裡面的設定
my.ini路徑:在MySql安裝路徑下便可找到
搜索到default-character-set以後,將文件內容改為
default-character-set = utf8
若使用big5則將uft-8改為big5
4.若是因為MySql裡面的繁體中文致使亂碼,可直接在程式碼指定語系
具體內容可參考此篇PHP 貫穿連接MySQL資料庫語法以及從程式碼解決中文亂碼的問題
5.若是html檔案,且已設定meta標籤內的charset,照舊沒法解決者
將html檔案以記事本開啟,
開啟以後,另存新檔,在最下面編碼的地方該改為 UTF-8
在 Unicode 中,某些字元看起來很類似,但卻能以不同體例貯存於文件中。例如,「ë」(e 母音轉變) 可以暗示為「e 母音變化」單一字元,也能夠暗示為「一般拉丁字母 e」+「組合母音轉變」兩個字元。Unicode 組合字元是與前一個字元組合一路利用的字元,是以母音轉變可能出現在「拉丁字母 e」的上面翻譯這兩種格式的印刷後果看起來完全一樣,然則貯存至檔案的內容互不溝通。
JS讀cookie的時辰,用unescape解碼,
然後就解決cookie中有中文亂碼的問題了。
2.外部JS檔UTF-8編碼問題
當一個HTML頁面或則PHP頁面包括一個外部的JS檔時,
假如HTML頁面或則PHP頁面是UTF-8編碼花樣的檔,
外部的JS檔同樣要轉成UTF-8的檔,
不然將呈現,沒有包括不成功,挪用函數時沒有反應的環境。
點擊編輯器的功能表:“檔”->“另存為”,可以看到當前檔的編碼,確保檔編碼為:UTF-8,
若是是ANSI,需要將編碼改成:UTF-8。
五.FLASH相關的UTF-8編碼問題
FLASH內部對所有字串,預設都是以UTF-8處置
1.FLASH讀文普通本檔(txt,html)
要將文字檔的編碼存為UTF-8
點擊編纂器的功能表:“檔”->“另存為”,可以看到當前檔的編碼,確保檔編碼為:UTF-8,
若是是ANSI,需要將編碼改成:UTF-8。
2.FLASH讀XML文件
要將XML檔的編碼存為UTF-8
點擊編纂器的功能表:“檔”->“另存為”,可以看到當前檔的編碼,確保檔編碼為:UTF-8,
若是是ANSI,需要將編碼改成:UTF-8翻譯
在XML第1行寫:
3.FLASH讀PHP返回資料
如果PHP編碼自己是UTF-8的,直接echo就能夠了
若是PHP編碼自己是GB2312的,可以將PHP轉存成UTF-8編碼花樣的檔,直接echo就能夠了
若是PHP編碼自己是GB2312的,而且不允許改檔的編碼格式,
用下麵的語句將字串轉換成UTF-8的編碼格式
$new_str = iconv("GB2312"翻譯社 "UTF-8", "$str");
再echo就能夠了
4.FLASH讀資料庫(MYSQL)的資料
FLASH要經由過程PHP讀取資料庫中的資料
PHP本身的編碼不重要,要害是若是資料庫的編碼是GB2312的話,
需要用下面的語句將字串轉換成UTF-8的編碼花式
$new_str = iconv("GB2312", "UTF-8"翻譯社 "$str");
5.FLASH通過PHP寫資料
本文引用自: http://blog.xuite.net/metafun/life/203344265-PHP%E4%BA%82%E7%A2%BC%E5%95%8F%E9%A1%8C%EF%BC%8CUTF-8%E有關各國語文翻譯公證的問題歡迎諮詢天成翻譯公司02-77260931