ホームページ  >  記事  >  バックエンド開発  >  PHP中国語文字化け解決策_PHPチュートリアル

PHP中国語文字化け解決策_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:50:25894ブラウズ

はじめに
PHP の中国語の文字化けは、PHP 開発でよくある問題の 1 つです。中国語の文字化けは、Web ページ自体で発生する場合もあれば、MYSQL の対話プロセスで発生する場合もあり、オペレーティング システムに関連する場合もあります。

1. PHP Webページのエンコード
最善かつ最速の解決策は、ページによって宣言されたエンコーディングをデータベースの内部エンコーディングと一致させることです。ページによって要求されたエンコーディングがデータベース内のエンコーディングと一致しない場合は、接続エンコーディングを設定します。 Mysql_query(“セット名 ***”).

1. php ファイル自体のエンコーディングは、Web ページのエンコーディングと一致する必要があります。gb2312 エンコーディングを使用したい場合は、php がヘッダーを出力する必要があります。 header(“コンテンツタイプ:text/html;charset=gb2312”)
静的ページの追加
、すべてのファイルのエンコード形式は ANSI です。メモ帳で開き、名前を付けて保存し、エンコードを ANSI として選択できます。 、ソースファイルを上書きします。

2. uft-8 エンコーディングを使用したい場合は、php がヘッダーを出力する必要があります

header(“コンテンツタイプ:text/html; charset=utf-8”),
静的ページの追加
の場合、すべてのファイルのエンコード形式は utf-8 として保存するのは少し面倒かもしれません。通常 utf -8 の先頭に BOM が存在します。Session を使用する場合は、editplus ソフトウェアを使用して保存できます。本ソフトウェアでは、ツール>パラメータ選択>ファイル>UTF-8署名を選択し、常に削除を選択して保存することでBOM情報を削除します。
3. PHP 自体は Unicode ではありません。substr などのすべての関数を mb_substr に変更する必要があります (mbstring 拡張機能をインストールする必要があります)。そうでない場合は、iconv を使用してトランスコードできます。

データベース操作を実行する必要がある PHP プログラムの前に mysql_query (「セット名エンコーディング」) を追加します。PHP エンコーディングが gb2312 の場合、mysql エンコーディングは gb2312 です。の場合、mysql エンコーディングは utf8 になります。この変更後は文字化けは発生しません。


戦場日記_LAMPバンドオブブラザーズより抜粋

http://www.bkjia.com/PHPjc/478270.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/478270.html技術記事はじめに: PHP の中国語の文字化けは、PHP 開発でよくある問題の 1 つです。中国語の文字化けは、Web ページ自体で発生することもあれば、MYSQL との対話中に発生することもあり、オペレーティング システムに関連していることもあります...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。