Heim >Backend-Entwicklung >PHP-Tutorial >Wie kodiere ich PHP-Arrays als JSON-Arrays anstelle von JSON-Objekten?
Beim Umgang mit PHP-Arrays und JSON ist es wichtig, den Unterschied zwischen JSON-Arrays und JSON-Objekten zu verstehen . JSON-Arrays werden durch eckige Klammern dargestellt, während JSON-Objekte geschweifte Klammern verwenden.
In Ihrem PHP-Array sind die Schlüssel numerisch (0 und 2). Um jedoch als JSON-Array codiert zu werden, müssen PHP-Arrays sequentielle Schlüssel haben, die bei 0 beginnen.
Das Standardverhalten von json_encode besteht darin, Ihr Array als JSON-Objekt zu codieren, weshalb Sie das Ergebnis erhalten Du hast es beschrieben. Um stattdessen ein JSON-Array zu erhalten, müssen Sie Ihr PHP-Array sequentiell mit array_values() neu indizieren.
$input = [ [ 'id' => 0, 'name' => 'name1', 'short_name' => 'n1' ], [ 'id' => 2, 'name' => 'name2', 'short_name' => 'n2' ] ]; $output = json_encode(array_values($input));
Nach der Neuindizierung ist die Ausgabe von json_encode wie gewünscht ein gültiges JSON-Array:
[ { "id": 0, "name": "name1", "short_name": "n1" }, { "id": 2, "name": "name2", "short_name": "n2" } ]
Das obige ist der detaillierte Inhalt vonWie kodiere ich PHP-Arrays als JSON-Arrays anstelle von JSON-Objekten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!