PHP 開発では、データの処理に JSON (JavaScript Object Notation) 形式がよく使用されます。 JSON は軽量のデータ交換形式であり、その構文は文字列、数値、配列、オブジェクトなどの JavaScript のデータ型に似ています。 JSON データを処理するときは、通常、PHP で配列またはオブジェクトに変換する必要があります。以下は、PHP を使用して JSON データを配列およびオブジェクトに変換する例です。
1. JSON 文字列を配列に変換する
PHP の json_decode() 関数を使用して、JSON 文字列を配列に変換できます。この関数は 2 つのパラメータを受け取ることができます。最初のパラメータは処理される JSON 文字列です。2 番目のパラメータはブール型のオプションのパラメータです。このパラメータの値が true の場合、JSON 文字列は連想配列に変換されます。このパラメータの値が false であるか、このパラメータが渡されない場合、JSON 文字列はインデックス配列に変換されます。
次は、JSON 文字列をインデックス配列に変換する例です:
$json_str = '[{"name":"张三","age":20},{"name":"李四","age":22}]'; $array = json_decode($json_str); print_r($array);
出力結果:
Array ( [0] => stdClass Object ( [name] => 张三 [age] => 20 ) [1] => stdClass Object ( [name] => 李四 [age] => 22 ) )
ご覧のとおり、JSON 文字列を次のように正常に変換しました。 2 つのオブジェクトを含むインデックス付き配列。 json_decode() 関数の 2 番目のパラメーターを true に設定すると、JSON 文字列を連想配列を含むインデックス付き配列に変換できます。
2. JSON 文字列をオブジェクトに変換する
PHP の json_decode() 関数を使用して、JSON 文字列をオブジェクトに変換することもできます。 JSON 文字列をオブジェクトに変換する場合、 json_decode() 関数の 2 番目のパラメーターを false に設定するか、このパラメーターを渡さない必要があります。
以下は、JSON 文字列をオブジェクトに変換する例です:
$json_str = '{"name":"张三","age":20}'; $obj = json_decode($json_str); echo $obj->name; echo $obj->age;
出力結果:
张三 20
ご覧のとおり、JSON 文字列をオブジェクトに正常に変換しました。オブジェクトのプロパティと同じように値にアクセスできる 2 つのプロパティを含むオブジェクト。
3. 配列を JSON 文字列に変換する
PHP の json_encode() 関数を使用して、配列またはオブジェクトを JSON 文字列に変換できます。この関数には 2 つのパラメータがあります。最初のパラメータは処理される配列またはオブジェクトです。2 番目のパラメータは、生成される JSON 文字列の形式とインデントを制御するために使用されるオプションのパラメータです。
以下は配列を JSON 文字列に変換する例です:
$array = array( array("name" => "张三", "age" => 20), array("name" => "李四", "age" => 22) ); $json_str = json_encode($array); echo $json_str;
出力結果:
[{"name":"张三","age":20},{"name":"李四","age":22}]
ご覧のとおり、配列は JSON に正常に変換されました。文字列。
4. オブジェクトを JSON 文字列に変換する
同様に、PHP の json_encode() 関数を使用して、オブジェクトを JSON 文字列に変換できます。
以下はオブジェクトを JSON 文字列に変換する例です:
class Person { public $name; public $age; function __construct($name, $age) { $this->name = $name; $this->age = $age; } } $p = new Person("张三", 20); $json_str = json_encode($p); echo $json_str;
出力結果:
{"name":"张三","age":20}
ご覧のとおり、オブジェクトは正常に JSON に変換されました。文字列。
概要
上記は、JSON データを PHP 配列およびオブジェクトに変換する例です。実際の開発では、PHP と JavaScript の間でデータを転送する必要があり、その場合は JSON 形式を使用する必要があります。したがって、PHP で JSON データを処理する方法を理解することが重要です。
以上がphp json変換配列オブジェクトの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。