php ajaxで中国語文字化けが発生した場合はどうすればよいですか?
php ajax で中国語の文字化けを取得する解決策: 1. 「iconv('utf-8','gb2312',$_POST['Data']);)」コードを実行します; 2. データベースからPHP経由 漢字を読み取ってjson形式に変換するだけです。
php ajaxで中国語文字化けが発生する場合は?
PHP の AJAX アプリケーションにおける中国語の文字化けの解決方法
Web アプリケーション開発では中国語の文字化けがよく発生します!今日は、主にアイデアを整理します:文字化けが発生するケースのほとんどは、AJAX を実行するときに遭遇するものです!データベースから直接読み取る場合はコーディングの問題が発生しないためです~ 1. フロントエンド JS からバックエンドにデータを送信するとき AJAX データが送信されるとき、基礎となる xmlHttprequest を直接使用するか、jQuery の ajax を使用するかに関係なく、ajax は utf- 8 をエンコードして送信します! ページが UTF-8 であれば問題ありません! 渡された中国語データは文字化けしません! GB2312 の場合は問題が発生します! GBK を UTF-8 に変換してバックグラウンドに送信すると、バックグラウンドで直接受信したデータが文字化けします!(解決策: バックグラウンド言語が PHP の場合、iconv('utf-8','gb2312 ',$_POST['Data ']);)原理は非常に単純です。バックグラウンドでの直接受信は utf-8 で、ページはすべて GBK であり、受信したデータを変換して戻すだけです。 GBK!この時点ではデータベース操作を行ってください!データベースに保存されるものは通常の中国語文字である必要があります! 2. 背景ページには、データが保存されていることが示されています。データベースには漢字が含まれています。この時点で JS フロント デスクに送り返される文字です。PHP ページはデータベースから通常の漢字を読み取り、AJAX 経由で送り返したいと考えています~それが返された場合、データは何も処理せずに文字列の形式で直接返されます! これは問題ありません! 中国語のすべてが通常どおりフロント ページに表示されます! しかし、私たちは通常、バックグラウンド データをパッケージ化する必要があります! そうしないと、フロント デスクで受信したデータが扱いにくくなります!PHP の場合は、通常は JSON を使用して送信します! このように、フロントエンド JS に渡されるデータは、解凍して操作するのが非常に簡単です!PHP バックグラウンドで json 変換操作を実行するときに問題が発生します! json を変換すると、次のことがわかります。データベースから読み取った中国語に NULL またはその他の異常な状態が表示されます。これは、JSON がエンコーディングのみをエスケープするためです! どのようなエンコーディングをエスケープするかは気にしません!とにかく、JSON は中国語に変換すると文字化けします~~ 解決策は次のとおりです:function arrayRecursive(&$array, $function, $apply_to_keys_also = false) { static $recursive_counter = 0; if (++$recursive_counter > 1000) { die('possible deep recursion attack'); } foreach ($array as $key => $value) { if (is_array($value)) { arrayRecursive($array[$key], $function, $apply_to_keys_also); } else { $array[$key] = $function($value); } if ($apply_to_keys_also && is_string($key)) { $new_key = $function($key); if ($new_key != $key) { $array[$new_key] = $array[$key]; unset($array[$key]); } } } $recursive_counter--; } function JSON($array) { arrayRecursive($array, 'urlencode', true); $json = json_encode($array); return urldecode($json); } $json_string=JSON($data); //$obj = json_decode($json_string); print_r($json_string);
推奨される学習: 「
PHP ビデオ チュートリアル 」
以上がphp ajaxで中国語文字化けが発生した場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
