JSON は、Web 開発で頻繁に使用される一般的なデータ転送形式です。 PHP は、JSON を処理するための関連関数とライブラリも提供します。 PHP では、JSON はオブジェクトまたは配列として表すことができます。この記事では、JSON 配列とオブジェクトの特性と違いに焦点を当てます。
JSON (JavaScript Object Notation) は、読み取りと書き込みが簡単で、マシンによる解析と生成が簡単な軽量のデータ交換形式です。 JSON は、キーと値のペアと配列という 2 つの構造で構成されます。 PHP では、 json_encode() 関数を使用して配列またはオブジェクトを JSON データ形式に変換でき、 json_decode() 関数を使用して JSON データを PHP 配列またはオブジェクトにデコードできます。
JSON 配列は順序付けされたコレクション、つまり複数の要素を含むリストです。各要素には、数値、文字列、または Boolean 、 null 、および他の配列またはオブジェクト。 PHP では、配列表記を使用して JSON 配列を作成します。例:
$students = [ "Tom", "Mary", "Jack" ]; $json = json_encode($students); echo $json; // ["Tom","Mary","Jack"]
JSON 配列は角括弧 "[]" でマークされ、各要素はカンマで区切られます。 PHP では、JSON 配列は json_decode() 関数によってデコードされ、PHP 配列に変換されます。次に例を示します。
$students = '["Tom","Mary","Jack"]'; $arr = json_decode($students); var_dump($arr); //array(3) { [0]=> string(3) "Tom" [1]=> string(4) "Mary" [2]=> string(4) "Jack" }
ご覧のとおり、デコードされた PHP 配列は元の配列と同じ構造を持ち、各要素は、ストレージ形式の対応する添字でマークされます。
JSON オブジェクトは順序付けされていないコレクション、つまり、各キーと値のペアがカンマで区切られた「キーと値」のペアで構成されるフォームです。別れた。 PHP では、JSON オブジェクトは連想配列表記によって作成されます。例:
$student = [ "name" => "Tom", "age" => 18, "score" => 85.5 ]; $json = json_encode($student); echo $json; // {"name":"Tom","age":18,"score":85.5}
JSON オブジェクトは中括弧 "{}" でマークされ、各キーと値のペアは対応する "key:value" で表されます。 " 形状。 PHP では、JSON オブジェクトは json_decode() 関数によってデコードされ、PHP オブジェクトに変換されます。例:
$student = '{"name":"Tom","age":18,"score":85.5}'; $obj = json_decode($student); var_dump($obj); //object(stdClass)#1 (3) { ["name"]=> string(3) "Tom" ["age"]=> int(18) ["score"]=> float(85.5) }
ご覧のとおり、デコードされた PHP オブジェクトは「->」を使用してプロパティにアクセスし、連想配列へのアクセス方法が異なります。さらに、JSON オブジェクトを PHP 連想配列にデコードする必要がある場合は、2 番目のパラメータを true に設定できます。たとえば、
$student = '{"name":"Tom","age":18,"score":85.5}'; $arr = json_decode($student, true); var_dump($arr); //array(3) { ["name"]=> string(3) "Tom" ["age"]=> int(18) ["score"]=> float(85.5) }
デコードされた PHP 配列が、連想配列と、各キーと値のペアが対応する「キー => 値」の形式で格納されます。
JSON 配列とオブジェクトは構造的に異なり、具体的な違いは次のとおりです:
(1) 配列順序付けされたコレクションで構成されます。各要素は、数値、文字列、ブール値、null、その他の配列またはオブジェクトにすることができます。オブジェクトは「キーと値」のペアで構成され、各キーと値のペアは、キーは文字列型である必要があり、値は数値、文字列、ブール値、null、配列、オブジェクトなどにすることができます。
(2) 配列は角括弧「[]」で表され、各要素はカンマで区切られます。オブジェクトは中括弧「{}」で表され、各キーと値のペアもカンマで区切られます。カンマ。
(3) PHP では、JSON 配列は配列表記を通じて作成され、JSON オブジェクトは連想配列表記を通じて作成され、JSON データは json_decode() 関数を通じて PHP 配列またはオブジェクトにデコードできます。
つまり、JSON 配列とオブジェクトは一般的なデータ形式であり、対応する関数とクラス ライブラリを通じて PHP で変換および処理できます。アプリケーションでは、実際のニーズに応じて異なるデータ形式を選択して使用することで、さまざまなニーズに適切に対応できます。
以上がJSON 配列と PHP オブジェクトの特徴と違いの簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。