PHP では、通常、データの保存と送信に JSON 形式を使用します。 JSON は、読み書きが簡単な軽量のデータ交換形式であり、異なるプログラミング言語間で簡単に交換できます。データの保存と送信の形式として JSON を使用できますが、実際のアプリケーションでは、多くの場合、PHP の配列関数を使用してデータを操作できるように、JSON 形式のテキストを PHP 配列に変換する必要があります。この記事では、JSON テキスト形式を PHP 配列に変換する方法を学びます。
JSON の形式はプレーン テキスト形式で、キーと値のペアで構成されます。各キーと値のペアはカンマで区切られ、キーと値のペアはコロンで区切られます。 JSON を使用してデータを保存する形式は非常に柔軟で、配列やオブジェクトなどのさまざまな複雑なデータ構造を使用でき、JSON のテキスト形式は PHP 配列の形式に非常に似ています。したがって、JSON テキストを PHP 配列に変換するのは非常に簡単です。
PHP では、 json_decode() 関数を使用して JSON テキストを PHP 配列に変換できます。以下は、json_decode() 関数を使用して JSON テキストを PHP 配列に変換するサンプル コードです。
<?php // JSON 文本数据 $json_data = '{"name":"Tom","age":20,"gender":"male"}'; // 将 JSON 文本转换成 PHP 数组 $array_data = json_decode($json_data, true); // 输出 PHP 数组 print_r($array_data); ?>
上記のコードでは、まず、JSON テキストを含む変数 $json_data を定義します。名前、年齢、性別という 3 つのキーと値のペアが含まれるオブジェクト。次に、json_decode() 関数を使用して JSON テキストを PHP 配列に変換し、返された配列を $array_data 変数に保存します。最後に、print_r() 関数を使用して PHP 配列を出力し、変換された結果を確認します。
上記のコードを実行すると、次の出力が表示されます。
Array ( [name] => Tom [age] => 20 [gender] => male )
出力は、JSON テキストが PHP 配列に正常に変換されたことを示しています。 json_decode() 関数を呼び出すときは、2 番目のパラメーター true を渡します。これは、オブジェクトの代わりに連想配列を返すことを指定します。 2 番目の引数を渡さない場合、返される結果は配列ではなくオブジェクトになります。
通常の JSON テキストを PHP 配列に変換することに加えて、複数のオブジェクトを含む JSON テキストを複数の PHP 配列を含む配列に変換することもできます。たとえば、以下に示すように複数のオブジェクトを含む JSON テキストがあるとします。
[ {"name":"Tom","age":20,"gender":"male"}, {"name":"Alice","age":22,"gender":"female"}, {"name":"Bob","age":25,"gender":"male"}, {"name":"Jack","age":30,"gender":"male"} ]
json_decode() 関数を使用して、この JSON テキストを PHP 配列に変換できます。 json_decode() 関数を呼び出す場合、連想配列を返すために 2 番目のパラメーター true を渡す必要があります。以下は、複数のオブジェクトを含む JSON テキストを PHP 配列に変換するサンプル コードです。
<?php // 包含多个对象的 JSON 文本数据 $json_data = '[{"name":"Tom","age":20,"gender":"male"},{"name":"Alice","age":22,"gender":"female"},{"name":"Bob","age":25,"gender":"male"},{"name":"Jack","age":30,"gender":"male"}]'; // 将 JSON 文本转换成 PHP 数组 $array_data = json_decode($json_data, true); // 输出 PHP 数组 print_r($array_data); ?>
上記のコードを実行すると、次の出力が表示されます。
Array ( [0] => Array ( [name] => Tom [age] => 20 [gender] => male ) [1] => Array ( [name] => Alice [age] => 22 [gender] => female ) [2] => Array ( [name] => Bob [age] => 25 [gender] => male ) [3] => Array ( [name] => Jack [age] => 30 [gender] => male ) )
出力結果は、複数のオブジェクトを含む JSON テキストを、複数の PHP 配列を含む配列に正常に変換したことを示しています。
概要:
PHP では、 json_decode() 関数を使用して JSON テキストを PHP 配列に変換するのは非常に簡単です。プレーンな JSON テキストを PHP 配列に変換する場合でも、複数のオブジェクトを含む JSON テキストを複数の PHP 配列を含む配列に変換する場合でも、 json_decode() 関数を使用すると簡単に実行できます。したがって、JSON データを操作する必要がある場合は、PHP 配列の使用を優先してデータを処理し、より適切なデータ操作を行うことができます。
以上がJSONテキスト形式をPHP配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。