ホームページ > バックエンド開発 > PHPの問題 > dw phpのWebページに中国語の文字化けがある場合はどうすればよいですか?

dw phpのWebページに中国語の文字化けがある場合はどうすればよいですか?

藏色散人
リリース: 2023-03-17 15:20:02
オリジナル
6786 人が閲覧しました

dw PHP Web ページで文字化けする中国語の解決策: 1. タイトルのエンコーディングを UTF8 に設定します; 2. Dreamweaver を使用して新しい PHP ファイルを作成する場合、「gt;" -8; 3. 「mysql_query("SET NAMES GBK");」を通じて MYSQL 接続エンコーディングを設定します。

dw phpのWebページに中国語の文字化けがある場合はどうすればよいですか?

このチュートリアルの動作環境: Windows 7 システム、Dreamweaver バージョン 8、Dell G3 コンピューター。

dw PHP Web ページに中国語の文字化けがある場合はどうすればよいですか?

PHP ファイル プレビュー インターフェイスを実行している Dreamweaver で中国語の文字化けの問題を解決する方法

Web サイト開発を行うには、多くの国でさまざまな問題に対処する必要があります。言語に関しては、中国語と英語が混在することがよくあります。 Dreamweaver を使用して PHP コードを作成して実行すると、中国語のプレビュー ウィンドウで文字化けが表示されることがありますが、英語は正常に表示されます。

dw phpのWebページに中国語の文字化けがある場合はどうすればよいですか?
dw phpのWebページに中国語の文字化けがある場合はどうすればよいですか?
#これが発生します 主な理由は次のとおりです。

1. ファイル エンコーディング: ページ ファイル (.html、.php など) 自体が保存されるエンコーディングを指します。 Notepad と Dreamweaver では、ページを開くときにファイルのエンコーディングが自動的に認識されるため、問題は少なくなります。ただし、ZendStudio はエンコードを自動的に認識するわけではなく、特定のエンコードでしかファイルを開かないため、作業中に誤って間違ったエンコードでファイルを開き、修正して保存すると文字化けが発生します。

解決策: ページ設定、タイトル/エンコーディング、UTF8

dw phpのWebページに中国語の文字化けがある場合はどうすればよいですか?

2 に設定、ページ宣言エンコーディング:

HTML ページのエンコード設定HTML コードの HEAD を使用して、Web ページが使用するエンコードをブラウザに伝えることができます。現在、XXX は中国の Web サイト開発で主に GB2312 と UTF を使用しています。 -8 2 つのエンコーディング。 Dreamweaver を使用して新しい PHP ファイルを作成する場合は、utf-8 形式を宣言する必要があります:



dw phpのWebページに中国語の文字化けがある場合はどうすればよいですか?
3. データベース接続エンコーディング: データベース操作の実行時にデータベースにデータを送信するために使用されるエンコーディングを指します。コーディングの混乱、たとえば、MySQL の内部デフォルトは latin1 エンコーディングですが、これは、Mysql はデータを latin1 エンコーディングで保存し、他のエンコーディングで Mysql に送信されたデータは latin1 エンコーディングに変換されることを意味します。

WEB開発でコーディングがどこに関係しているのかがわかると、上記3つのコーディング設定が矛盾しているため、コード化けの原因もわかります。各種コーディングのほとんどはASCIIと互換性があるため、英語の記号が文字化けすることはありません, 漢字が文字化けしてしまいます。

一般的なエラーと解決策:

1. データベースは UTF8 エンコーディングを使用しており、ページ宣言エンコーディングは GB2312 です。これが文字化けの最も一般的な原因です。

現時点では、PHP スクリプト内の直接 SELECT データが文字化けします。クエリを実行する前にこれを使用する必要があります: mysql_query("SET NAMES GBK"); MYSQL 接続エンコーディングを設定して、ページが確実に宣言エンコーディングはここでの設定と一致しています 指定された接続エンコーディングは一致しています (GBK は GB2312 の拡張です)。ページが UTF-8 エンコードされている場合は、次を使用できます: mysql_query("SET NAMES UTF8");
PHP エンコード設定
PHP コードの最初の文を書き込みます:

<?php
header("Content-type:text/html;charset=utf-8");
?>
ログイン後にコピー

php.ini ファイルを変更します

「/etc/php5/apache2/php.ini」を変更し、

default_charset = "iso-8859-1"
ログイン後にコピー

をdefault_charset = "utf-8"に変更します

Mysql エンコード設定

<?php
mysql_query(&#39;SET NAMES UTF8&#39;);
?>
ログイン後にコピー

一般的に使用される UTF-8 ではなく、UTF8 であることに注意してください。ページ宣言のエンコーディングがデータベースの内部エンコーディングと一致している場合は、接続エンコーディングを設定する必要はありません。

MYSQL のデータ入出力は上記よりも複雑です。MYSQL 設定ファイル my.ini には 2 つのデフォルトのエンコーディングが定義されており、[client] と [ のdefault-character-set です。 mysqld].default-character-set は、デフォルトでクライアント接続とデータベースが内部的に使用するエンコーディングを設定するために使用されます。上記で指定したエンコーディングは、実際には、MYSQL クライアントがサーバーに接続するときのコマンド ライン パラメーターcharacter_set_client であり、デフォルトのエンコーディングを使用する代わりに、受信したクライアント データのエンコーディングを MYSQL サーバーに伝えます。

前述の内容に基づいて、データのクエリ/変更/追加を行う前に、データベース コーディングを追加する必要もあります。

2. ページ宣言のエンコーディングがファイル自体のエンコーディングと一致していません。エンコーディングが一致しないと、アーティストがページを作成するときにブラウザに表示される内容が文字化けしてしまうため、これはめったに起こりません。多くの場合、リリース後にいくつかの軽微なバグを修正し、間違ったエンコーディングでページを開いて保存することが原因で発生します。または、CuteFTP などの FTP ソフトウェアを使用してオンラインでファイルを直接変更すると、ソフトウェアのエンコード設定が正しくないため、間違ったエンコードが変換されます。

3. バーチャルホストをレンタルする際、上記3つのエンコードが正しく設定されている場合でも文字化けが発生する場合があります。たとえば、Web ページが GB2312 でエンコードされている場合、IE などのブラウザで開いたときに常に UTF-8 として認識されます。Web ページの HEAD にはすでに GB2312 と記載されています。ブラウザのエンコードを手動で GB2312 に変更した後、 、ページは正常に表示されます。その理由は、サーバー Apache がサーバーのグローバルなデフォルト エンコーディングを設定し、httpd.conf に AddDefaultCharset UTF-8 を追加するためです。このとき、サーバーはまずHTTPヘッダーをブラウザーに送信しますが、その優先度はページ内で宣言されているエンコーディングよりも高いため、当然ブラウザーは誤認識してしまいます。解決策は 2 つあり、管理者は独自の仮想マシンの構成ファイルに AddDefaultCharset GB2312 を追加してグローバル構成をオーバーライドするか、独自のディレクトリの .htaccess で構成する必要があります。

概要: PHP で中国語の文字化けコードを解決するには、ページで宣言されているエンコーディングをデータベースの内部エンコーディングと一致させることが最も早い解決策です。データベースの内部エンコーディング、接続エンコーディングを設定、mysql_query ("SET NAMES XXX "); XXX は接続コードです。 mysql_query('SET NAMES UTF8'); など; [2]

最後に、中国語が正常に表示されます:

<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8">
  <title>中文</title>
</head>

<body>

<h1>中文</h1>

<?php
echo "Hello World!";
?>
ログイン後にコピー

dw phpのWebページに中国語の文字化けがある場合はどうすればよいですか?

推奨学習: 「PHP ビデオ チュートリアル

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

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート