PHP の「json_encode」は Unicode 文字をどのように処理し、出力を制御するにはどうすればよいですか?
Dec 11, 2024 am 01:18 AMJSON エンコーディングと Unicode 文字表示
PHP の json_encode 関数を使用して「特別な」Unicode 文字を含む文字列をエンコードすると、16 進数で文字化けして表示されることがよくありますエンコードされた文字列。例:
json_encode(['foo' => '馬']); // {"foo":"\u99ac"}
JSON 文字列エンコーディングについて
JSON では、文字列リテラルはバックスラッシュ (「u」) でエスケープされた Unicode コード ポイントとして表現できます。これにより、元の文字セットでのエンコーディングに関係なく、任意の文字のエンコーディングが可能になります。したがって、上記の JSON 文字列は完全に有効であり、エンコードされていない文字列 (「馬」) と同じ文字を表します。
PHP のデフォルトのエンコーディング設定
PHP の json_encode 関数が優先されます。非 ASCII 文字をエンコードするための「u」エスケープ シーケンスの使用。これは JSON 標準に準拠しており、JSON データの移植性が保証されます。必要に応じて、JSON_UNESCAPED_UNICODE フラグを指定してこの設定を無効にできます。
json_encode(['foo' => '馬'], JSON_UNESCAPED_UNICODE); // {"foo":"馬"}
JSON での Unicode 表現
エスケープされた Unicode 文字とエンコードされていない Unicode 文字の両方に注意することが重要です。 JSON 内では同じ意味と値を持ちます。エンコーディングの選択は、データ構造の特定の要件によって異なります。ただし、さまざまなプラットフォームやアプリケーションとの相互運用性と互換性のために、エスケープ形式が一般的に好まれます。
以上がPHP の「json_encode」は Unicode 文字をどのように処理し、出力を制御するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

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

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

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

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

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

ホットトピック











LaravelのバックエンドでReactアプリを構築する:パート2、React
