Wie bekomme ich ein Array als Ergebnis von json_decode()
?
Ich hatte ein Array wie folgt:
%Vor%und ich habe dies in der Datenbank gespeichert wie JSON encode:
%Vor%Jetzt möchte ich Array wieder aus der Datenbank bekommen. Aber wenn ich benutze:
%Vor%Ich bekomme:
%Vor%Anstelle eines Arrays. Wie kann ich ein Array anstelle eines Objekts erhalten?
Setzen Sie den zweiten Parameter von json_decode
auf "true", um assoziative Arrays zu erzwingen:
Wenn Sie nur diese Daten in PHP verwenden, empfehle ich serialize
und unserialize
statt, oder Sie werden nie in der Lage sein, zwischen Objekten und assoziativen Arrays zu unterscheiden, weil die Objektklasseninformationen gehen beim Kodieren zu JSON verloren.
Wenn das Objektergebnis von json_decode
auf ein Array angewendet wird, kann dies zu unerwarteten Ergebnissen führen (und Kopfschmerzen verursachen). Aus diesem Grund wird empfohlen, json_decode($json, true)
anstelle von (array)json_decode($json)
zu verwenden. Hier ist ein Beispiel:
Gebrochen:
%Vor%Arbeiten:
%Vor%