2017-11-24 23 views
0

Ich habe folgendes json: -ein JSON.parse mehrdimensionales Array PHP-Zugriff auf

{ 
    "firstName": "Jhon", 
    "lastName": "Doe", 
    "username": "jhon", 
    "avatar": "localhost/uploads/avatars/default.jpg", 
    "language": "ar", 
    "birth_date": "2017-11-22 00:00:00", 
    "weight_chart": [], 
    "health_status": { 
     "id": 130, 
     "user_id": 258, 
     "weight": 95, 
     "height": 171, 
    }, 

decodiert ich die oben json

$user = json_decode($response); 

Jetzt ich in der Lage bin der Vorname zu drucken, indem Sie: $ user-> vorName

Meine Fragen ist: -

  • Kann ich auf die JSON-Werte zugreifen, ohne sie zu dekodieren?
  • Wie kann ich auf die "health_status" -Werte ID, Gewicht ... zugreifen?

Antwort

2

Ihre json ist falsch formatiert, diese Struktur versuchen:

$str = '{ 
    "firstName": "Jhon", 
    "lastName": "Doe", 
    "username": "jhon", 
    "avatar": "localhost/uploads/avatars/default.jpg", 
    "language": "ar", 
    "birth_date": "2017-11-22 00:00:00", 
    "weight_chart": [], 
    "health_status": { 
     "id": 130, 
     "user_id": 258, 
     "weight": 95, 
     "height": 171 
    } 
}'; 

$obj = json_decode($str); 
echo $obj->firstName.' - '; 
echo $obj->health_status->id.' - '; 
echo $obj->health_status->weight; 

Antwort: Jhon - 130 - 95

+0

Die json i von einigen Diensten api Netz bin nicht immer eine JSON-Datei ist, kann ich nicht kontrollieren, die die Struktur der JSON. – user2873860

+0

überprüfen Sie Ihre json [jsonlint] (https://jsonlint.com/). Ist ungültig – miglio

+0

können Sie den vollständigen JSON anzeigen? – miglio

Verwandte Themen