Solía ir a la escuela solo por un corto tiempo en programación. Hace un tiempo y estoy oxidado. He estado tratando de volver a aprender todo por mí mismo y algo me está molestando. Estoy tratando de imprimir un objeto específico desde una API externa, pero nada de lo que intento parece funcionar. Realmente no sé qué buscar en Google para obtener la respuesta correcta que estoy buscando. De todos modos aquí está mi código.
<?php
$url = 'http://apis.is/flight?language=en&type=departures';
$json = file_get_contents($url);
$results = json_decode($json, TRUE);
for ($x = 0; $x < count($results); $x++) {
echo $results[$x]['results']['flightNumber']."<br/>";
}
?>
3 respuestas
Si realiza una depuración (por cierto, aprenda qué es), verá que su $results
tiene la tecla una : result
, sobre el cual puede iterar con un simple foreach
:
foreach ($results['result'] as $item) {
echo $item['flightNumber'];
}
Está intentando acceder a los datos devueltos por la API en el orden incorrecto, haga esto en su lugar:
<?php
$url = 'http://apis.is/flight?language=en&type=departures';
$json = file_get_contents($url);
$results = json_decode($json, TRUE);
// To loop through an array, use foreach instead of for
// It is easier to use
foreach($results['results'] as $result){
echo $result['flightNumber'].'<br />';
}
?>
<?php
$url = 'http://apis.is/flight?language=en&type=departures';
$json = file_get_contents($url);
$results = json_decode($json, TRUE);
foreach ($results['results'] as $res) {
echo $res['flightNumber']."<br/>";
}
?>
Nuevas preguntas
php
PHP es un lenguaje de scripting ampliamente utilizado, dinámico, orientado a objetos e interpretado, diseñado principalmente para el desarrollo web del lado del servidor. Usado para preguntas sobre el lenguaje PHP.