Web サイトを構築すると、PHP ページの出力が文字化けし、PHP データベースのフィールドの出力も文字化けします。これを解決するにはどうすればよいですか? PHPで出力される漢字が文字化けする場合の解決方法を以下の記事でご紹介しますので、ご参考になれば幸いです。
最初の HTML と PHP 混合ページ ソリューション
方法 1: タグを使用する
HTML PHP コードに埋め込まれている場合<meta charset="UTF-8"> を使用すると、中国語の文字化けの問題を解決できます
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php输出中文乱码</title> </head> <body> <div class="demo"> <?php echo "php中文网!"; ?> </div> </body> </html>
方法 2: header() 関数を使用します
HTML と PHP を混合する方法。最初の方法で説明した操作に従うことに加えて、PHP ファイルの先頭に次のコードを追加する必要もあります:
<?php header("content-type:text/html;charset=utf-8"); //设置编码 ?>
2 番目のタイプは、純粋な PHP ページでの中国語の文字化けの問題です (データは静的です)
PHP ページで文字化けが発生した場合は、次のコードをページの先頭に追加するだけで済みます。ページ。
<?php header("content-type:text/html;charset=utf-8"); //设置编码 ?>
3 番目のタイプ、PHP Mysql 中国語文字化け問題
3 番目の操作に従うことに加えて、その前にデータベース エンコーディングを追加する必要もあります。データのクエリ/変更/追加。さらに、ここでの UTF8 は以前の UTF8 とは異なり、中央に水平線がないことに注意してください。
<?php mysql_query('SET NAMES UTF8'); //接下来的就是查出数据或者修改,增加 ?>
MySQL バージョン 4.1 以降を使用している場合は、リンク データベース操作の後に次のように文字エンコーディングを設定できます。
UTF-8 エンコードはエンコードの 1 つです。utf-8 エンコードを使用したくない場合は、他のエンコードを使用することもできます。UTF-8 を使用したいエンコードに置き換えるだけです。現在、主に使用されています。中国の Web サイト開発では、GB2312 と UTF-8 の 2 つのエンコーディングがあります。
注意すべき点は、データベース操作を実行する必要がある PHP プログラムの前に追加される mysql_query("set names 'coding'"); コードが PHP コーディングと一致している必要があることです。PHP コーディングが gb2312 の場合, mysql エンコーディングは gb2312 です。utf-8 の場合、mysql エンコーディングは utf8 なので、データの挿入または取得時に文字化けが発生しません
以上がPHP からの中国語出力が文字化けする問題を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。