Daten aus API auslesen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
all
antwort
anzahl
array
auslese
benutzen
code
feststelle
folgenden code
http
interessieren
list
manual
objekt
passenden parameter
status
url
verarbeiten
wandeln
zahl
-
Hallo zusammen.
Ich muss auf eine API zugreifen und alle "Objekte" auslesen. Der Aufbau der API sieht so aus:
"data": {
"3089": {
...
},
"2009": {
...
},...
Die Zahlen sind variabel und ich will all diese Zahlen in einem Array haben. Mich Interessieren nur die Zahlen, nicht die Werte, die auf die Zahl folgen. Normal benutze ich folgenden Code, um auf eine API zuzgreifen:
$url = '...'; $out = get_headers($url); list ($http, $zahl, $status) = explode(' ', $out[0], 3); // if($zahl == 200){ $json_file = @file_get_contents($url); $json_array = json_decode($json_file); $array = $json_array->data; $anzahl = count($array); for($i = 0; $i < $anzahl; $i++){ echo $array[$i]->name; } }
Aber sonst war "data" in der API auch immer ein Array, sodass ich diesen Code benutzen konnte. Aber jetzt steht hinter dem Data ja eine geschweifte Klammer und keine eckige. Wie muss ich den Code also umwandeln, damit ich alle benötigten Zahlen in ein Array bekomme, also: (3089, 2009, ...)
Ich würde mich über Hilfe freuen.
Viele Grüße
Beitrag zuletzt geändert: 21.2.2014 22:40:17 von ultimate-bravery -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Die API liefert doch ein Array zurück. Wenn ich nicht irre im JSON-Format. Mit php kannst Du diese Antwort mittels json_decode()verarbeiten.
-
Ich habs hinbekommen. Hier der Code:
$url = '...'; $out = get_headers($url); list ($http, $zahl, $status) = explode(' ', $out[0], 3); if($zahl == 200){ $json_file = @file_get_contents($url); $json_array = json_decode($json_file); $array = $json_array->data; $anzahl = count($array); foreach(get_object_vars($array) as $property => $value) { echo $property."<br>"; } }
Der Code gibt mir untereinander die gebrauchten Zahlen aus.
Beitrag zuletzt geändert: 21.2.2014 23:52:59 von ultimate-bravery -
ultimate-bravery schrieb:
Deine Antwort hilft mir nicht weiter
Doch! Wenn Du das Manual liest, wirst Du feststellen, daß die Funktion einen passenden Parameter liefert, um das Objekt in ein Array zu wandeln.
Edit: Scheint ja auch anders funktioniert zu haben.
Beitrag zuletzt geändert: 22.2.2014 0:04:17 von fatfreddy -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage