您好,登錄后才能下訂單哦!
php echo中文亂碼怎么辦?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
php echo中文亂碼的解決辦法:1、在PHP文件的頭部加上代碼為“<?phpheader("Content-type:text/html;charset=utf-8");”;2、用SQL命令將出現(xiàn)中文編碼錯誤的數(shù)據(jù)表改成UTF-8編碼。
今天給導(dǎo)航狗(https://daohanggou.cn/)的 PHP 程序和數(shù)據(jù)庫文件遷移了服務(wù)器, 但是遷移到新的服務(wù)器上之后 PHP 輸出的中文和 PHP 輸出的從 MySQL 數(shù)據(jù)庫查詢出來的數(shù)據(jù)中的中文都出現(xiàn)了亂碼的情況. 下面記錄一下我解決該問題的過程.
首先解決的是 PHP 程序直接輸出 (輸出的不是從數(shù)據(jù)庫中查詢的數(shù)據(jù)) 的中文亂碼的問題. 由于我使用的是一臺虛擬主機, 沒有管理員權(quán)限, 無法修改 PHP 的配置文件, 因此, 對于這個問題我的解決辦法是在 PHP 文件的頭部加上如下代碼:
<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head>
或者加上如下代碼也可以:
<?php header("Content-type:text/html;charset=utf-8");?>
這樣處理之后, 輸出的結(jié)果是這樣的 (圖 1):
圖 1
如圖 1 所示, 我用紅框標注的是 PHP 程序從 MySQL 數(shù)據(jù)庫查詢的結(jié)果, 查詢結(jié)果中的英文可以正常顯示, 中文卻變成了問號. 關(guān)于這個問題, 我的解決方法是在 MySQL 查詢語句的前一行加入如下代碼:
mysql_query('SET NAMES UTF8');
如圖 2:
圖 2
如果經(jīng)過上面的步驟之后問題還是沒有解決, 可以嘗試使用下面的 SQL 命令將出現(xiàn)中文編碼錯誤的數(shù)據(jù)表改成 UTF-8 編碼:
ALTER TABLE `Test` DEFAULT CHARACTER SET utf8;
undefined
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。