為W3C 驗證設定UTF-8 HTTP 標頭
使用PHP 和HTML 時,請確保由PHP 匹配HTML 檔案中指定的字元編碼。 W3C 驗證器可以識別兩者之間的差異,從而導致驗證錯誤。
問題
在提供的範例中,HTML 程式碼使用 UTF-8 字元集,而PHP 標頭預設為 ISO-8859-1。這種不匹配會觸發以下驗證錯誤:
「HTTP 標頭(iso-8859-1) 中指定的字元編碼與元素(utf-8) 中的值不同。」
解:修改HTTP 頭
為了解決這個問題,PHP 提供了header()函數,它允許您可以修改發送到客戶端的 HTTP 標頭。若要將 HTTP 標頭設為 UTF-8,請使用下列程式碼:
header('Content-Type: text/html; charset=utf-8');
在將任何輸出傳送到客戶端之前,必須呼叫 header() 函數。如果不這樣做將導致無法修改標頭。您可以使用 headers_sent 函數檢查標頭是否已經傳送。
透過實作此程式碼,您可以確保 PHP 發送的 HTTP 標頭與 HTML 檔案中指定的 UTF-8 字元編碼相匹配,解決驗證錯誤。
以上是如何修復因 HTTP 標頭和 HTML 字元編碼不匹配導致的 W3C 驗證錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!