如果以 UTF-8 編碼的 PHP 網頁在瀏覽器出現亂碼, 一般都是設定錯誤編碼所致, 要解決分別可以透過 HTML 的 meta tag, PHP Header 及 Apache 進行設定, 以下是解決方法:
HTML Meta Tag:
在 HTMl 的
及 加入以下這行, 向瀏覽器宣告使用 UTF-8 編碼:PHP Header:
另一個方法是用 PHP 的 header() 向瀏覽器宣告使用 UTF-8 編碼, 但這行要放在程式開端, 輸出內容前插入:
|
1 2 3 |
<?php header("Content-Type:text/html; charset=utf-8"); ?> |
Apache 設定:
如果不想修改網頁或 PHP, 也可以在 Apache 設定預設編碼, 如果可以修改 httpd.conf, 可以直接修改, 不可以的話放在 .htaccess 也一樣可以的, 以下分別是 Apache 的幾種修改預設編碼的方法:
1. 設定個別 Directory (目錄) 預設編碼, 開啟 httpd.conf 加入:
|
1 2 3 |
<Directory "/var/www/phpini.com"> addDefaultCharset UTF-8 </Directory> |
2. 設定個別 VirtualHost (虛擬主機) 預設編碼, 開啟 httpd.conf 加入:
|
1 2 3 4 |
<VirtualHost 123.242.230.24> ServerName www.phpini.com addDefaultCharset UTF-8 </VirtualHost> |
3. 開啟 .htaccess 加入:
|
1 |
addDefaultCharset UTF-8 |