字體亂碼怎么解決 網(wǎng)頁制作中預(yù)覽網(wǎng)頁文字出現(xiàn)亂碼問題?
網(wǎng)頁制作中預(yù)覽網(wǎng)頁文字出現(xiàn)亂碼問題?造成亂碼的最直接原因是使用錯(cuò)誤的編碼(字符編碼)來解碼字符。如果網(wǎng)頁字節(jié)內(nèi)容本來是用UTF-8編碼的,但是在解碼的時(shí)候用GBK解碼錯(cuò)了,那么當(dāng)然會有亂碼。亂碼有兩個(gè)
網(wǎng)頁制作中預(yù)覽網(wǎng)頁文字出現(xiàn)亂碼問題?
造成亂碼的最直接原因是使用錯(cuò)誤的編碼(字符編碼)來解碼字符。如果網(wǎng)頁字節(jié)內(nèi)容本來是用UTF-8編碼的,但是在解碼的時(shí)候用GBK解碼錯(cuò)了,那么當(dāng)然會有亂碼。亂碼有兩個(gè)特點(diǎn)。一是詞序混亂,沒有語義邏輯;二是這些詞很多都很少見。大量稀有詞出現(xiàn)在亂碼中的原因純粹是概率問題。在幾乎所有的字符集中,普通字符只占很小的一部分,其他字符是一些“奇怪”的字符。當(dāng)網(wǎng)頁中的字節(jié)內(nèi)容被錯(cuò)誤編碼解碼時(shí),可以簡單地看作是到目標(biāo)字符集的隨機(jī)映射,因此解碼的結(jié)果是大量無序的稀有字符,也稱為“隨機(jī)碼”。
為什么在頁面中運(yùn)行后,顯示數(shù)據(jù)庫中得文字都是亂碼?
一般來說,亂碼的問題其實(shí)是編碼不一致造成的。因此,要解決PHP中文亂碼問題,有以下步驟:
1。頁面聲明的編碼與數(shù)據(jù)庫的內(nèi)部編碼一致。例如,如果在網(wǎng)頁中設(shè)置charset=GB2312,但是數(shù)據(jù)庫使用UTF-8,如果不轉(zhuǎn)換iconv,則顯示可能有問題。
2. 頁面文件的編碼與頁面聲明的編碼一致。例如,頁面文件是測試.php,文件以utf-8b格式保存,如果在網(wǎng)頁中設(shè)置charset=GB2312,則可能無法正常顯示。根據(jù)您的問題描述,“非數(shù)據(jù)庫導(dǎo)出部件在PHP中的中文顯示是正常的”??梢源_定頁面文件代碼與頁面聲明代碼一致。然后,問題的原因是頁面聲明代碼與數(shù)據(jù)庫內(nèi)部代碼不一致。您可以檢查數(shù)據(jù)庫的編碼格式和頁面定義。