在使用PHP寫程序編碼設置為UTF8時發現以http get方式發送奇數個漢字到服務器端時會出現亂碼,一開始以為PHP程序或服務配置有問題。
經過代碼的排查發現不是,在google中搜索到看到有人說是IE6存在兼容問題,IE7,IE8,FIREFOX,CHROME都沒有這個問題。
對於這個問題解決方法很簡單了,直接使用urlencode編碼進行處理一下即可,注意如果使用的是javascript傳遞的參數,則使用的是encodeURI函數。
其實這個應該是一個習慣的問題了,對於所有get傳遞的參數都進行一下urlencode處理,會讓程序顯得更加健壯,兼容性,可移植性更好。
*