天天看點

html頁面出現變量問号,UTF-8編碼的html頁面顯示 (問号)而不是字元

我在win7(x64)上安裝了标準的XAMPP。 在過去的項目中,我的編碼問題曾經發生,其中mysql編碼與php enconding不比對,後者有時會在其他編碼中輸出html,是以我決定使用utf-8對所有内容進行一緻編碼。UTF-8編碼的html頁面顯示 (問号)而不是字元

我剛開始使用html标記,并且已經遇到麻煩。

我的頁面使用UTF-8儲存(沒有BOM,我認為)

//更新:原來,這是情況并非如此。該檔案實際上儲存在ISO_8859-1。我後來發現了這一點,謝謝謝爾彭德利斯的回答。我必須傳回并将我的項目設定(已設定為“ISO-8859-1”)更改為所需的“UTF-8”。

PHP設定在每htaccess來服務于UTF-8 .PHP的頁面:AddCharset UTF-8 .php

HTML具有meta标簽指定:

為了測試我設定采用php header('Content-Type:text/html; charset=UTF-8');

頁面顯然是在utf-8中釋出的(firefox和chrome可以識别它),但是任何特殊字元(如é,á或¡)都将顯示為�。同時檢視源代碼。

當拖放以上所有字元提到的編碼設定正确呈現但無論哪種根據浏覽器被檢測節目的編碼windows-1252或ISO-8859-1。

怎麼回事?我很困惑。我會預料到完全相反的行為。

歡迎任何建議,謝謝!

編輯: 希望這可以幫助更多。這是響應報頭(根據螢火蟲)

HTTP/1.1 200 OK

Date: Sat, 26 Mar 2011 20:49:44 GMT

Server: Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1

X-Powered-By: PHP/5.3.1

Content-Length: 91

Keep-Alive: timeout=5, max=99

Connection: Keep-Alive

Content-Type: text/html; charset=utf-8

2011-03-26

leugim