ホームページ  >  記事  >  バックエンド開発  >  phpの中国語出力が文字化けした場合はどうすればよいですか?

phpの中国語出力が文字化けした場合はどうすればよいですか?

藏色散人
藏色散人オリジナル
2020-11-19 10:03:252967ブラウズ

php での文字化けした中国語出力の解決策: 1. コード「charset=UTF-8」を PHP ファイルのヘッダーに追加します; 2. コード「mysql_query('SET NAMES UTF8」を以前のファイルに追加します) MySQL クエリ ステートメントの行 ');"。

phpの中国語出力が文字化けした場合はどうすればよいですか?

このチュートリアルの動作環境: Windows 7 システム、php5。 6 、この記事はすべてのブランドのコンピューターに適用されます。

推奨: 「

PHP ビデオ チュートリアル

PHP で出力される中国語文字化けの問題の解決策

問題の説明

へ今日のナビゲーション犬 (https://daohanggou.cn/) の PHP プログラムとデータベース ファイルはサーバーに移行されましたが、新しいサーバーに移行した後、PHP によって出力された中国語と、MySQL データベースからクエリされたデータ内の中国語が表示されなくなりました。 PHP による出力が文字化けしていました。状況。以下は、この問題を解決するプロセスの記録です。

解決手順

最初の解決策は、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 クエリ ステートメントの前の行に次のコードを追加することです。図 2 に示す
mysql_query('SET NAMES UTF8');

:

图 2

図 2

上記の手順を実行しても問題が解決しない場合次の SQL コマンドを使用して、中国語のエンコード エラーのあるデータ テーブルを UTF-8 エンコードに変更してみてください:

ALTER TABLE `Test` DEFAULT CHARACTER SET utf8;

以上がphpの中国語出力が文字化けした場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。