2012年9月15日 星期六

PHP + MySQL 的亂碼解決方法


首先,先來瞭解一下,為什麼會有亂碼!

網頁檔案本身的編碼,以及 HTML 檔案 Metadata 定義的編碼不同:

由於大部分的HTML網頁檔案本身都是由 Dreamweaver、Eclipse、甚至於是微軟的記事本等軟體所產生出來的。其所使用的編碼有可能預設為 big5、utf-8 或其它不同的編碼。假如這個HTML網頁檔案本身是big5,且在HTML的HEAD語法中又將編碼設定為:

<meta http-equiv="Content-type" content="text/html; charset=utf-8">

那麼,當瀏覽器(IE、Firefox、Chrome....)在開啟這個HTML網頁時,第一印象就根據這個meta中所描述的utf-8編碼來顯示這個網頁。

當瀏覽器以utf-8的編碼來讀取big5的檔案編碼時,恭喜您,一堆亂碼將出現在您眼前