Wie kann die JSON-Serialisierung von Arrays mit nicht aufeinanderfolgenden Schlüsseln sichergestellt werden?

Mary-Kate Olsen
Freigeben: 2024-11-11 06:03:03
Original
979 Leute haben es durchsucht

How to Ensure JSON Serialization of Arrays with Non-Consecutive Keys?

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]]]
Nach dem Login kopieren

Diese Änderung stellt sicher, dass die serialisierte JSON-Ausgabe wie gewünscht ein Array von Arrays ist:

[["Afghanistan", 32, 13], ["Albania", 32, 12]]
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage