php不能顯示中文?
php不能顯示中文是因為資料編碼不一致。
PHP網頁的編碼
1.php檔案本身的編碼與網頁的編碼應符合
a. 如果欲使用gb2312編碼,那麼php要輸出頭:
header(“Content-Type: text/html; charset=gb2312")
,靜態頁面新增<meta http-equiv="Content- Type" content="text/html; charset=gb2312">
,所有檔案的編碼格式為ANSI,可用記事本打開,另存為選擇編碼為ANSI,覆蓋來源檔案。
b. 如果要使用utf-8編碼,那麼php要輸出頭:
header(“Content-Type: text/html; charset=utf-8")
,靜態頁面新增<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
,所有檔案的編碼格式為utf-8。
儲存為utf-8可能會有點麻煩,一般utf-8檔開頭會有BOM,如果使用session就會出問題,可用editplus來保存,在editplus中,工具->參數選擇- >檔->UTF-8簽名,選擇總是刪除,再儲存就可以去掉BOM資訊了。
2. php本身不是Unicode的,所有substr之類的函數得改成mb_substr(需要裝mbstring擴充);或用iconv轉碼。
更多PHP相關知識,請造訪PHP中文網!
以上是php不能顯示中文的詳細內容。更多資訊請關注PHP中文網其他相關文章!