2016-12-19 4 views
0

Ich habe die folgende JSON auf einer SeiteJSON Parsen von mehrdimensionalen JSON-Objekt in PHP

{ 
"users": [ 
     { 
      "name": "John", 
      "age": "30", 
     }, 
     { 
      "name": "Dave", 
      "age": "20", 
     }, 
     ... 
     ] 
    } 

ich es $json = json_decode($data); bin mit Decodierung. Wenn ich eine Schleife haben möchte, die jeden Namen und jedes Alter für jeden Benutzer ausdruckt, wie kann ich das tun?

Ich bin Tring so etwas wie der folgende Code zu tun, aber es funktioniert nicht

foreach($json->users->name as $key => $result){ 
     $name = $result; 
     $age = $result->age; 

     echo $name; 
     echo $age; 
     echo "<br>"; 
} 

Was mache ich falsch? Wie könnte ich das erreichen?

+0

'print_r ($ json-> benutzer)' Was siehst du? –

+0

Versuch, die Eigenschaft von Nicht-Objekt in on line 44 zu bekommen –

Antwort

1

Sie können es wie folgt tun:

// Output 
Name: BA8842_530 
Age: 0.0 
Name: BA8842_540 
Age: 20 
... 

this helps:

$string = "{\"users\": [{\"name\": \"BA8842_530\",\"age\": \"0.0\"},{\"name\": \"BA8842_540\",\"age\": \"20\"}]}"; 
$json = json_decode($string, true); 
foreach ($json['users'] as $key => $value) { 
    echo "Name: " . $value['name'] . "<br>"; 
    echo "Age: " . $value['age'] . "<br>"; 
} 

Der Ausgang sein würde!

+0

Arbeitete! Vielen Dank, wurde verrückt hahah –

+0

@ L.K. - Wenn Sie diese Antwort richtig und hilfreich finden, dann akzeptieren Sie diese Antwort, da sie mich motiviert, Antworten auf andere Fragen zu geben, und hilft anderen, schnell die richtige Antwort zu finden! –

+0

War 5 Minuten zu warten;) –

1
foreach($json->users as $row){ 
     echo $row->name; 
     echo $row->age; 
     echo "<br>"; 
}