Stampa valori da un oggetto STD all'interno di un array dalla risposta JSON
-
12-12-2019 - |
Domanda
Im po 'nuovo con PHP e JSON, e dopo aver scavato per una risposta non sono stato in grado di trovarne uno, speravo se potessi aiutarmi ...
Sto lavorando su un rapporto da una risposta JSON La risposta JSON sembra un po 'così:
stdClass Object
(
[FlightInformation] => stdClass Object
(
[@size] => 10
[Itinerary] => Array
(
[0] => stdClass Object
(
[bookingID] => 123456789
[creationDate] => 10/04/2012
[Customer] => stdClass Object
(
[email] => someone@aol.com
)
[FlightConfirmation] => stdClass Object
(
[supplierId] => AA
[arrivalDate] => 10/04/2012
[departureDate] => 10/05/2012
[confirmationNumber] => 0987654321
[RateInformation] => stdClass Object
(
[@size] => 1
[RateDescription] => stdClass Object
(
[@promo] => false
[ChargeableInfo] => stdClass Object
(
[@total] => 57.94
.
Costruire un rapporto che è come questo ..
foreach( $response->FlightInformation->Itinerary as $output) {
echo $output-> bookingID;
echo $output-> creationDate;
echo $output-> arrivalDate; <<<< won't Print
echo $output->departureDate; <<<< won't Print
echo $output->total; <<<< won't Print
.
E alcuni altri elementi ... ma tutto ciò che è sotto un oggetto all'interno della matrice de itinerario non mostrerà .. Non riesco a stampare i valori di TES indicati, per favore aiuta ...
Cheers
Soluzione
Questo perché arrivo, partenza e totale sono gli oggetti stessi.Dovresti fare qualcosa come:
$output->Customer->FlightConfirmation->arrivalDate;
$output->Customer->FlightConfirmation->departureDate
$output->Customer->FlightConfirmation->RateInformation->RateDescription->ChargeableInfo->total;
. Altri suggerimenti
Il tuo livello mancante di nidificazione di quegli elementi sono all'interno FlightConfirmation
:
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow