Nachdem das assoziative PHP-Array sortiert wurde, wird es mit json_encode an das Frontend ausgegeben. Warum ändert sich die Reihenfolge?
Dies ist das sortierte Array, das mit der Funktion file_put_contents in die Datei geschrieben wurde. Die Reihenfolge ist korrekt.
Dies sind die Daten, die mit echo json_encode() an die Rezeption ausgegeben werden, und die Reihenfolge hat sich geändert.
Warum? Ich kann es nicht herausfinden, kann es jemand erklären?
Nachdem das assoziative PHP-Array sortiert wurde, wird es mit json_encode an das Frontend ausgegeben. Warum ändert sich die Reihenfolge?
Dies ist das sortierte Array, das mit der Funktion file_put_contents in die Datei geschrieben wurde. Die Reihenfolge ist korrekt.
Dies sind die Daten, die mit echo json_encode() an die Rezeption ausgegeben werden, und die Reihenfolge hat sich geändert.
Warum? Ich kann es nicht herausfinden, kann es jemand erklären?
Obwohl PHP-Arrays geordnet sind, garantiert JavaScript oder Object im JSON-Standard nicht die Reihenfolge. Jede Änderung des Schlüssels durch die JSON-Bibliothek ist ein standardkonformes Verhalten. Die Verarbeitung der Schlüsselreihenfolge in einer bestimmten Implementierung (Aufbewahrung/Sortierung). / außer Betrieb) sollte nicht als verlässlich angesehen werden
Wenn Sie die Reihenfolge sicherstellen möchten, wird empfohlen, die Datenstruktur zu ändern und „Objektarray“ zu verwenden, um sie zu implementieren
<code>{ cnt: [ {id: "12", value:"1"}, {id: "03", value:"1"}, ...</code>
json
ist ungeordnet
Ich bin schon einmal auf ähnliche Probleme gestoßen. Sie können den Wert von json_encode in Form eines Strings ausgeben und ihn selbst konvertieren
In Chrome passiert dies tatsächlich
Auch wenn Sie die
-Struktur im Hintergrund ausgeben, ist die key => value
Reihenfolge normaljson_encode
Die endgültige Lösung lautet also
array_value