php josn によって送信された文字化けコードの解決策: 1. データベースと前後の PHP ページのエンコーディングが一貫していることを確認します; 2. urlencode 関数を設定して使用します; 3. 文字列を使用しますエンコード変換機能。
この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
問題の解決方法php josn によって送信された文字化けしたコードは何ですか?
Ajax テクノロジを使用して PHP バックエンドと対話する場合、中国語の文字化けがよく発生することがわかっています。XML に似たデータ交換形式である JSON も、PHP を使用すると中国語で表示されます。文字化けの場合、PHP JSONの中国語文字化けを解決する方法は、実はPHP Ajax値転送の中国語文字化けを解決する方法と似ています。 PHP JSON の文字をチュートリアル形式で説明します。
PHP が JSON と対話するときに中国語の文字化けが表示されるのはなぜですか?
JSON は JS と同じであるため、クライアント上の文字は UTF8 の形式で処理されます。つまり、JSON の送信または承認によって返された文字は UTF8 の形式で処理されます。 PHP と対話する場合、データベースのエンコーディングが PHP ページのエンコーディングで UTF8 形式を使用していない場合、PHP が JSON と対話するときに中国語の文字が文字化けします。
PHP JSON の中国語の文字化けを解決する方法
PHP と JSON の相互作用で中国語の文字化けが発生する理由を理解すると、解決策は実際にははるかに簡単になります。 。
PHP JSON の中国語の文字化けコードを解決する方法 1:
データベースとフロントエンドおよびバックエンド PHP ページのエンコーディングが一貫していることを確認します
中国語の文字化けした PHP JSON を解決する最も簡単な方法は、データベース エンコーディングを確認することです。PHP ページ エンコーディングは均一に UTF8 形式を使用します。PHP の初心者にとって、Web サイトを構築するときにデータベースに UTF8 形式を使用するのが最善です。トラブル。
PHP JSON 中国語文字化けの解決方法 2:
PHP 関数 urlencode と JS 関数 decodeURI() を設定して使用する
PHP が JSON を使用してフロントと対話する場合-end JS, use json_encode 関数の前に、urlencode 関数を使用して URL をエンコードする必要があります。JS クライアントは、中国語の情報を読み取る前に、JS 関数 decodeURI() を使用して URL をデコードします。
注: 配列を JSON 形式に変換するなど、PHP ページで JSON を介して対話する場合は、まず urlencode 関数を使用して配列のキーと値を URL エンコードし、次に json_encode 関数と urldecode 関数を使用します。
PHP JSON 中国語文字化けを解決する 3 つの方法:
文字列エンコード変換関数を使用する
データベースのエンコードと PHP ページのエンコードがさまざまな理由で一致しない場合。既存のデータベース エンコーディングは GB2312 を使用します。JSON を操作する場合は、文字列エンコーディング変換関数を使用して文字セット間で変換する必要があります。一般的に使用される関数には iconv があります。iconv は PHP 構成環境のサポートを必要とするため、サポートされていない場合は、独自の gbk および UTF8 エンコード変換関数を作成することでエンコード変換を実装できます。
これまで、PHP JSON の中国語文字化けに対する 3 つの解決策を紹介してきましたが、実際、PHP 開発において、PHP と AJAX/JS の間で同様のやり取りが発生した場合、これらの方法は基本的に中国語が文字化けしたときに使用されます。考え方は似ています。
推奨学習: 「PHP ビデオ チュートリアル 」
以上がphp josn によって送信されたコードが文字化けする問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。