Heim >Backend-Entwicklung >PHP-Tutorial >Wie kapsele ich ein PHP-JSON-Array in einem übergeordneten Objekt?
So kapseln Sie JSON-Code in einem Objekt
In PHP kann das Erstellen eines JSON-Objekts aus einem Array einfach erscheinen, aber das ist vielleicht der Fall Manchmal müssen Sie das JSON-Objekt in eine andere Objektstruktur einkapseln. Lassen Sie uns untersuchen, wie dies erreicht werden kann.
Betrachten Sie das folgende PHP-Array:
$post_data = array( 'item_type_id' => $item_type, 'string_key' => $string_key, 'string_value' => $string_value, 'string_extra' => $string_extra, 'is_public' => $public, 'is_public_for_contacts' => $public_contacts );
Um dieses Array in JSON zu kodieren, können Sie den folgenden Code verwenden:
$post_data = json_encode($post_data);
Dies würde JSON im folgenden Format erzeugen:
{ "item_type_id": 4, "string_key": "key", "string_value": "value", "string_extra": "100000583627394", "is_public": true, "is_public_for_contacts": false }
Manchmal müssen Sie dies jedoch möglicherweise umschließen JSON-Struktur innerhalb eines zusätzlichen „item“-Objekts. Der folgende Code zeigt eine Lösung:
$post_data = json_encode(array('item' => $post_data), JSON_FORCE_OBJECT);
Indem Sie die JSON_FORCE_OBJECT-Konstante als zweites Argument an json_encode() übergeben, weisen Sie PHP an, die Daten als Objekt zu kodieren, unabhängig davon, ob es sich um ein Array handelt oder nicht. Dadurch wird sichergestellt, dass die resultierende JSON-Struktur in das gewünschte „item“-Objekt eingeschlossen wird:
{ "item": { "item_type_id": 4, "string_key": "key", "string_value": "value", "string_extra": "100000583627394", "is_public": true, "is_public_for_contacts": false } }
Denken Sie daran, dass gemäß der JSON-Spezifikation „{}“-Klammern ein Objekt angeben, während „[]“ Arrays darstellt . Durch die Verwendung von JSON_FORCE_OBJECT können Sie die Ausgabestruktur an Ihre spezifischen Anforderungen anpassen.
Das obige ist der detaillierte Inhalt vonWie kapsele ich ein PHP-JSON-Array in einem übergeordneten Objekt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!