Array-Schlüssel für die JSON-Serialisierung ändern
Bei Verwendung der Funktion json_encode() können Arrays mit numerischen Schlüsseln als Objekte statt als Arrays serialisiert werden , was zu einer unerwünschten Ausgabe führt. Dies tritt auf, wenn die Array-Schlüssel nicht aufeinanderfolgend sind.
Um dieses Problem zu beheben, ohne auf reguläre Ausdrücke zurückzugreifen, sollten Sie die Verwendung von array_values() für die äußerste Array-Struktur in Betracht ziehen. Durch den Aufruf von array_values($array) können Sie die ursprünglichen Array-Schlüssel verwerfen und durch auf Null basierende fortlaufende Zahlen ersetzen.
Beispiel:
$array = [ 2 => ["Afghanistan", 32, 13], 4 => ["Albania", 32, 12] ]; $output = array_values($array); echo json_encode($output); // [[["Afghanistan", 32, 13], ["Albania", 32, 12]]]
Diese Änderung stellt sicher, dass die serialisierte JSON-Ausgabe wie gewünscht ein Array von Arrays ist:
[["Afghanistan", 32, 13], ["Albania", 32, 12]]
Das obige ist der detaillierte Inhalt vonWie kann die JSON-Serialisierung von Arrays mit nicht aufeinanderfolgenden Schlüsseln sichergestellt werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!