PHP字符編碼問題-總結


今天在網上看到一個人的對於php開發中字符編碼的總結,感覺不錯,摘錄如下:

一,php編碼轉換
        1.通過iconv()函數實現編碼轉換
                語法:iconv(string in_charset,string out_charset,string str)
 將指定字符串str由in_charset編碼格式轉換成out_charset編碼格式,返回bool值。
        2.通過mb_convert_encoding()函數實現編碼轉換
                語法:mb_convert_encoding(string str,string to_encoding[,mixed from_encoding])
                將字符串str的編碼由from_encoding轉換為to_encoding。
二,檢測php字符串的編碼
        通過mb_detect_encoding()函數來檢測字符串使用的是何種字符編碼。
三,字符編碼優先級
        由高--->低
        1.http消息報頭的Content-Type字段中的charset參數。
        2.通過meta元素聲明,將http-equiv設置成Content-Type。
        3.一些元素的charset屬性設置。
四,解決頁面中的php亂碼問題
        數據庫中數據的輸入和輸出產生的亂碼,可以通過PHP的mysql_query()函數設置來解決,而頁面中如果出現亂碼,則可以使用下面的兩種方法解決。
        (1)使用meta標簽設置頁面編碼
        
        meta標簽的作用是聲明客戶端的瀏覽器用什么字符編碼顯示該頁面。
        (2)通過header()函數設置頁面的編碼格式
        header("content-type;text/html;charset=gb2312");

        header()函數的作用是把括號內的信息發到HTTP標頭。

五、如果瀏覽器不能選擇你在頁面中默認的字符編碼來顯示頁面

可以設置php中的php.ini文件中的default_charset = "編碼", 例如:default_charset = "gb2312"

這里決定了瀏覽器選擇的默認編碼。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM