Web 開発では、データの転送に JSON (JavaScript Object Notation) がよく使用されます。 PHP では、JSON を配列に変換する関数を使用して、JSON をより簡単に処理できます。この記事では、json_decode
関数を使用して JSON データを PHP 配列に変換する方法について説明します。
JSON は、テキストを使用してデータ オブジェクトを表す軽量のデータ交換形式です。これは JavaScript のデータ交換形式として設計されていますが、他の多くのプログラミング言語でも使用できます。 JSON データはキーと値のペアで構成されており、数値、文字列、ブール値、オブジェクト、配列などの任意のタイプの値を使用できます。 JSON には次の利点があります。
次に、単純な JSON データの例を示します。
{ "name": "John", "age": 30, "city": "New York", "hobbies": ["reading", "music", "sports"], "isMarried": false }
in PHP json_decode()
関数は、JSON 形式の文字列を PHP オブジェクトまたは配列に変換できます。 json_decode()
関数の構文は次のとおりです。
mixed json_decode(string $json [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]])
上記の構文の $json
は、PHP オブジェクトにデコードされる JSON 形式の文字列です。または配列。オプションの 2 番目のパラメーター $assoc
は true
に設定され、JSON オブジェクトを PHP 配列に変換します。デフォルトでは、この値は false
で、JSON オブジェクトを PHP オブジェクトに変換することを意味します。 $ Depth
このパラメータは、デコードの最大深度を指定します (デフォルトは 512)。最後のパラメータ $options
は、特殊文字の許可など、他のオプションを設定するために使用できます。
json_decode()
関数を使用して、JSON データを PHP 配列に変換しましょう。次の JSON データがあるとします。
{ "name": "John", "age": 30, "city": "New York", "hobbies": ["reading", "music", "sports"], "isMarried": false }
次のコードを使用して、それを PHP 配列に変換できます。
$json = '{"name":"John","age":30,"city":"New York","hobbies":["reading","music","sports"],"isMarried":false}'; $arr = json_decode($json, true); print_r($arr);
出力は次のとおりです。
Array ( [name] => John [age] => 30 [city] => New York [hobbies] => Array ( [0] => reading [1] => music [2] => sports ) [isMarried] => )
As上に示すように、JSON をフォーマットします。文字列は json_decode()
関数に渡されます。解析された結果を配列変数に保存します。ここでは、2 番目のパラメーターを true
に設定して、関数に PHP 配列を返すように指示します。
JSON 文字列を PHP 配列に変換する場合は、次の点に注意する必要があります。
json_decode()
関数を使用する場合は、UTF-8 などの特別なヘッダーを持つ文字セットを使用することが最適であることを確認する必要があります。 PHP では、json_decode()
関数を使用して JSON 文字列を PHP 配列に変換するのは非常に簡単です。 JSON 文字列とオプションの引数を渡すだけで、関数は JSON 文字列を PHP 配列に変換します。 JSON データが有効であり、変換された PHP データ型情報が正しいことを確認するだけで済みます。
最後に、配列に $json
という名前を付けないでください。混乱が生じ、PHP プログラムは JSON 文字列を解析するのか、それとも配列。
以上がjsonを配列に変換するPHP関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。