首頁 >後端開發 >PHP問題 >php中文輸出亂碼怎麼辦

php中文輸出亂碼怎麼辦

藏色散人
藏色散人原創
2020-11-19 10:03:253015瀏覽

php中文輸出亂碼的解決方法:1、在PHP檔案的頭部加入程式碼「charset=UTF-8」;2、在MySQL查詢語句的前一行新增程式碼「mysql_query('SET NAMES UTF8 ');」。

php中文輸出亂碼怎麼辦

#本教學操作環境:Windows7系統、php5.6 ,本文適用於所有品牌的電腦。

推薦:《PHP影片教學

解決PHP 輸出中文亂碼的問題

問題描述

#今天給導航狗(https://daohanggou.cn/)的PHP 程式和資料庫檔案遷移了伺服器, 但是遷移到新的伺服器上之後PHP 輸出的中文和PHP 輸出的從MySQL 資料庫查詢出來的資料中的中文都出現了亂碼的情況. 下面記錄一下我解決該問題的過程.

解決步驟

首先解決的是PHP 程式直接輸出(輸出的不是從資料庫中查詢的資料) 的中文亂碼的問題. 由於我使用的是一台虛擬主機, 沒有管理員權限, 無法修改PHP 的配置文件, 因此, 對於這個問題我的解決辦法是在PHP 文件的頭部加上如下代碼:

<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head>

或加上如下程式碼也可以:

<?phpheader("Content-type:text/html;charset=utf-8");?>

這樣處理之後, 輸出的結果是這樣的(圖1):

图 1

圖1

如圖1 所示, 我用紅框標註的是PHP 程式從MySQL 資料庫查詢的結果, 查詢結果中的英文可以正常顯示, 中文卻變成了問號. 關於這個問題, 我的解決方法是在MySQL 查詢語句的前一行加入如下程式碼:

mysql_query('SET NAMES UTF8');

如圖2:

图 2

圖2

如果經過上面的步驟之後問題還是沒有解決, 可以嘗試使用下面的SQL 指令將出現中文編碼錯誤的資料表改​​成UTF-8 編碼:

ALTER TABLE `Test` DEFAULT CHARACTER SET utf8;

   

以上是php中文輸出亂碼怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn