2017-02-07 6 views
1

Ich habe den folgenden Code und will einfach nur auf die Informationen zuzugreifen innerhalb des folgenden und Druck StatusPHP Zugriff auf JSON-Antwort und Druck

"Email": { "Status": "in-queue" }

Ich bin wirklich neu in PHP, damit ich für Fehler entschuldigen für eine Klasse lernen.

{ 
    "APIResponse": { 
     "ResponseStatus": 1, 
     "Email": { 
      "EmailSid": "12893712893789", 
      "SentEmails": "[email protected]", 
      "Date": "2017-02-07 22:53:26", 
      "Subject": "700message", 
      "Status": "in-queue", 
      "TotalEmailSent": 1, 
      "TotalPrize": "0.0100", 
      "ApiVersion": "2" 
     } 
    } 
} 

Ich weiß, wie man dies in JavaScript tut, aber es scheint ein bisschen different für PHP.

Jede Hilfe wird geschätzt, danke Jungs! :)

Antwort

1

Hier ist ein schnelles PHP Beispiel dafür, wie Ihr JSON-String in ein Array konvertieren und einen Wert anzuzeigen:

$json = '{ "APIResponse": { "ResponseStatus": 1, "Email": { "EmailSid": "12893712893789", "SentEmails": "[email protected]", "Date": "2017-02-07 22:53:26", "Subject": "700message", "Status": "in-queue", "TotalEmailSent": 1, "TotalPrize": "0.0100", "ApiVersion": "2" } } }'; $array = json_decode($json, true); echo $array['APIResponse']['Email']['Status'];

Hinweis, wie jedes Kind-Knoten ein Kind in dem assoziativen Array wird. Sie können auch eine print_r($array); machen, um die gesamte Struktur im nativen PHP-assoziativen Array-Format zu sehen.

+0

AMAZING vielen Dank! – TXJ

+0

Oh Chris hat es zuerst genagelt! Up votiert :) – Stu

0
<?php 
$json = '{ 
    "APIResponse": { 
     "ResponseStatus": 1, 
     "Email": { 
      "EmailSid": "12893712893789", 
      "SentEmails": "[email protected]", 
      "Date": "2017-02-07 22:53:26", 
      "Subject": "700message", 
      "Status": "in-queue", 
      "TotalEmailSent": 1, 
      "TotalPrize": "0.0100", 
      "ApiVersion": "2" 
     } 
    } 
}'; 


// if this API response's JSON is being stored as a string type local variable decode it first. 

$decoded_json = json_decode($json, true); 

//Optional but helps when programing var_dump($decoded_json); Use this to help visualize the nested array variables you need to access. 

// Use each array key to walk into and access the desired value 

echo $decoded_json['APIResponse']['Email']['Status']; 


?> 

* Edit auf Fehler berücksichtigen, bezogen auf die Frage in Ihrem Kommentar:

Während noch die Json sicher zu sein, zuerst zu dekodieren, wie oben erwähnt, lassen Sie den unten sollten Sie diese Werte zugreifen.

Schließlich, und mehr als Rat, wenn Sie jemals ratlos werden. Versuchen Sie einfach nur auf ein Array zu einem Zeitpunkt zuzugreifen, beginnend mit dem Äußersten, und arbeiten Sie sich ein, das hilft mir immer!

+0

Was ist mit dem Array in diesem? Ich möchte echo ' "Code"' '' ' { "APIResponse": { "responsestatus": 0, "Fehler": { "Error": [ { "Code":„Fehler Code 5001" , "Message": "Bitte geben Sie eine korrekt formatierte 'To' E-Mail-Adresse", "Moreinfo". [] } ] } } } '' ' Letzte Frage, Danke Jungs so sehr! – TXJ