PHP輸出中文亂碼怎麼解決?

2020-07-16 10:05:39

在建立網站的時候我們會發現,php頁面輸出亂碼,php輸出資料庫欄位也亂碼,這要怎麼解決?下面本篇文章就來給大家介紹一下解決php輸出中文亂碼的方法,希望對你們有所幫助。

第一種、HTML和PHP混合的頁面解決方案

方法一:使用<meta>標籤

如果是HTML中嵌入PHP程式碼,可以使用<meta charset="UTF-8">來解決中文亂碼問題

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>php輸出中文亂碼</title>
	</head>

	<body>
		<div class="demo">

			<?php
			echo "TW511.COM!";
			?>
		</div>

	</body>

</html>

方法二:使用header()函數

如何是HTML和PHP混編,除了按照第一個方法所說的操作之外,還需要在PHP檔案的最上面加入這句程式碼:

<?php
header("content-type:text/html;charset=utf-8");         //設定編碼
?>

第二種、純PHP頁面的中文亂碼問題(資料是靜態的)

如果你的PHP頁面出現了亂碼,只需要在頁面的開始處加入下面程式碼就可以了。

<?php
header("content-type:text/html;charset=utf-8");         //設定編碼
?>

第三種、PHP+Mysql中文亂碼問題

這個除了按照第三種所說的操作之外,還要在你的資料查詢/修改/增加之前加入資料庫編碼。而且,值得注意的是,這裡的UTF8和之前的不一樣,中間是沒有橫線的。

 <?php
    mysql_query('SET NAMES UTF8');
    //接下來的就是查出資料或者修改,增加
?>

如何你使用的MySQL版本在 4.1 或更高版本,可以在連結資料庫操作後,設定一個字元編碼,像下面這樣

7.jpg

UTF-8編碼只是其中一種編碼,如果不想使用utf-8編碼,也可以使用其他編碼,只需將UTF-8換成你想使用的編碼就可以,目前中文網站開發中主要用的是GB2312和UTF-8 兩種編碼。

有一點要注意的是在需要做資料庫操作的php程式前加的 mysql_query("set names '編碼'");編碼,一定要和php編碼一致,如果php編碼是gb2312那mysql編碼就是gb2312,如果是utf-8那mysql編碼就是 utf8,這樣插入或檢索資料時就不會出現亂碼了

以上就是PHP輸出中文亂碼怎麼解決?的詳細內容,更多請關注TW511.COM其它相關文章!