Ich habe einige JS, die eine POST-Anfrage an einen PHP-Controller sendet. Der JS-Code lautet wie folgt:Zugriff auf JSON-Objekte in PHP-Array
$.ajax({
url: 'map-controller/coordcontroller.php',
data: {myData:JSON.stringify(myArray)},
type: 'post',
success: function(output) {
console.log(output);
}
});
Auf der Serverseite, $ _POST [ "myData"] ist wie folgt:
[{"lat":36.8867497490586,"lng":-76.3046246767044},{"lat":36.88671756964517,"lng":-76.30381464958191}]
Wie ich es verstehe, liegt meine Daten in einem einzigen Element Array ($ _POST ["myData"]), enthält eine Reihe von Objekten, die durch Kommata getrennt sind. Ich habe versucht, json_decode(), aber ich habe das Gefühl, es funktioniert nicht, weil mein Datenobjekt tatsächlich ein Array ist anstelle von tatsächlichen JSON-Daten.
Meine Frage: Wie kann ich auf jedes Objekt innerhalb einer Schleife zugreifen? Oder ist meine Implementierung fehlerhaft und sollte ich mein Javascript ändern, um die Daten anders zu senden?
'json_decode()' würde ein anderes Array zurückgeben, das aus dem json-Objekt erstellt wurde, Sie können es einfach mit 'foreach' durchlaufen, gibt es sonst noch etwas zur Frage? – georoot
Ich habe Echo anstelle von var_dump verwendet, um den Erfolg von json_decode() zu testen. Ich habe jetzt entdeckt, dass der json_decode() funktioniert wie erwartet und ich versuchte es falsch auszugeben. Vielen Dank. – FantasticSponge