- 論壇徽章:
- 0
|
今天在網(wǎng)上看到一個人的對于php開發(fā)中字符編碼的總結,感覺不錯,摘錄如下:一,php編碼轉換 1.通過iconv()函數(shù)實現(xiàn)編碼轉換 語法:iconv(string in_charset,string out_charset,string str) 將指定字符串str由in_charset編碼格式轉換成out_charset編碼格式,返回bool值。 2.通過mb_convert_encoding()函數(shù)實現(xiàn)編碼轉換 語法:mb_convert_encoding(string str,string to_encoding[,mixed from_encoding]) 將字符串str的編碼由from_encoding轉換為to_encoding。 二,檢測php字符串的編碼 通過mb_detect_encoding()函數(shù)來檢測字符串使用的是何種字符編碼。 三,字符編碼優(yōu)先級 由高--->低 1.http消息報頭的Content-Type字段中的charset參數(shù)。 2.通過meta元素聲明,將http-equiv設置成Content-Type。 3.一些元素的charset屬性設置。 四,解決頁面中的php亂碼問題 數(shù)據(jù)庫中數(shù)據(jù)的輸入和輸出產(chǎn)生的亂碼,可以通過PHP的mysql_query()函數(shù)設置來解決,而頁面中如果出現(xiàn)亂碼,則可以使用下面的兩種方法解決。 (1)使用meta標簽設置頁面編碼 meta標簽的作用是聲明客戶端的瀏覽器用什么字符編碼顯示該頁面。 (2)通過header()函數(shù)設置頁面的編碼格式 header("content-type;text/html;charset=gb2312");
header()函數(shù)的作用是把括號內(nèi)的信息發(fā)到HTTP標頭。 五、如果瀏覽器不能選擇你在頁面中默認的字符編碼來顯示頁面 可以設置php中的php.ini文件中的default_charset = "編碼", 例如:default_charset = "gb2312" 這里決定了瀏覽器選擇的默認編碼。 |
|