Pregunta

Im un poco nuevo con PHP y JSON, y después de cavar por una respuesta, no pude encontrar una, esperaba que pudieras ayudarme ...

Estoy trabajando en un informe de una respuesta JSON La respuesta de JSON se ve un poco así:

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

Yo construyo un informe que es así ...

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

y algunos elementos más ... pero cualquier cosa que esté bajo un objeto dentro de la matriz de itinerario no se mostrará ... No puedo imprimir los valores de THE indicados, por favor ayuda ...

vítores

¿Fue útil?

Solución

Es porque la llegada, la salida y el total son objetos en sí mismos.Tendrías que hacer algo así:

 $output->Customer->FlightConfirmation->arrivalDate;
 $output->Customer->FlightConfirmation->departureDate
 $output->Customer->FlightConfirmation->RateInformation->RateDescription->ChargeableInfo->total;

Otros consejos

que falta un nivel de anidación esos elementos están dentro de FlightConfirmation:

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top