json文字列をjson配列phpに変換する
May 19, 2023 pm 09:01 PMPHP 開発では、多くの場合、JSON 文字列を処理する必要があり、場合によっては JSON 文字列を JSON 配列に変換する必要があります。今日は、PHP で JSON 文字列を JSON 配列に変換する方法を学びます。
- json_decode() 関数を使用する
PHP には、JSON 文字列を PHP オブジェクトまたは配列に変換するために使用される、非常に単純な関数 json_decode() が用意されています。
構文:
mixed json_decode ( string $json [, bool $assoc = FALSE [, int $depth = 512 [, int $options = 0 ]]] )
パラメータ:
- json: デコードする必要がある JSON 文字列。
- assoc: このパラメータが TRUE の場合、オブジェクトの代わりに配列が返されます。
- Depth: 最大深度を設定します。デフォルトで許可される深さは 512 で、この値を超えると NULL が返されます。
- オプション: バイナリ マスク。デコード動作に影響します。一般的に使用されるオプションには、JSON_HEX_QUOT、JSON_HEX_TAG、JSON_HEX_AMP、JSON_HEX_APOS、JSON_NUMERIC_CHECK、JSON_PRETTY_PRINT、JSON_UNESCAPED_SLASHES、JSON_UNESCAPED_UNICODE などが含まれます。詳細については、PHP 公式ドキュメントを参照してください。
例:
$json_string = '{"name": "Tom","age": 18,"gender": "male"}'; $json_array = json_decode($json_string, true); print_r($json_array);
出力:
Array ( [name] => Tom [age] => 18 [gender] => male )
上記の例では、$json_array は JSON 配列です。
- json_decode() を使用して 2 次元配列を解析する
JSON 文字列に 2 次元配列が含まれている場合は、assoc パラメーターを false に設定して渡すことができます。 json_decode( ) 関数は解析して stdClass 型のオブジェクトを取得し、オブジェクトのプロパティを使用して値を取得できます。
例:
$json_string = '[{"name": "Tom","age": 18,"gender": "male"},{"name": "Alice","age": 20,"gender": "female"}]'; $json_array = json_decode($json_string, false); echo $json_array[0]->name;
出力:
Tom
上記の例では、$json_array[0]->name は、JSON 配列の最初の要素の name 属性です。価値。
- JSON 文字列を PHP オブジェクトに変換する
JSON 文字列を配列ではなく PHP オブジェクトに変換したい場合は、 assoc パラメータを false に設定するか、設定しないでください。このパラメータを渡します。
例:
$json_string = '{"name": "Tom","age": 18,"gender": "male"}'; $json_object = json_decode($json_string); echo $json_object->age;
出力:
18
上記の例では、$json_object は PHP オブジェクトであり、オブジェクトのプロパティを使用して値を取得できます。
概要
この記事では、PHP で JSON 文字列を JSON 配列に変換する 2 つの方法を紹介します。1 つは json_decode() 関数を使用してキーと値のペアの配列と多次元配列を解析する方法、もう 1 つは JSON を変換する方法です。文字列を PHP オブジェクトに変換します。
どの方法を使用する場合でも、JSON 文字列を JSONArray に変換し、PHP を使用して JSON データを取得できます。これは、データをより適切に処理し、より優れたアプリケーションを開発するのに役立ちます。
以上がjson文字列をjson配列phpに変換するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

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

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

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

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

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

ホットトピック











PHPにメッセージキュー(rabbitmq、redis)を実装する方法は?

PHPアレイの重複排除は、パフォーマンスの損失について考慮する必要がありますか?
