Seguimiento en tiempo real de los vuelos: la API de Flight Tracker

Obtén el estado actualizado de los vuelos con la API de Flight Tracker

by Janeth Kent Date: 06-06-2023 API PHP json

La API de Flight Tracker brinda a los desarrolladores la capacidad de acceder al estado de los vuelos en tiempo real, lo cual resulta extremadamente útil para integrar un seguimiento histórico o consultas en vivo del tráfico aéreo en tu sitio web.

Con esta API, puedes rastrear fácilmente el estado de un vuelo y acceder al horario de los aeropuertos.

Existen varias API de Flight Tracker disponibles para obtener el estado de los vuelos, y una de las mejores opciones es aviationstack. Esta API proporciona una forma sencilla de acceder a datos de aviación a nivel mundial, incluyendo el estado de los vuelos y los horarios de los aeropuertos, en tiempo real.

Aviationstack realiza un seguimiento de todos los vuelos en todo el mundo en todo momento, almacenando la información en su base de datos y ofreciendo el estado actualizado de los vuelos a través de su API. Se trata de una API REST fácil de usar que devuelve la respuesta en formato JSON, siendo compatible con diversos lenguajes de programación como PHP, Python, Ruby, Node.js, jQuery, Go, entre otros.

En este tutorial, te mostraremos cómo obtener el estado de los vuelos en tiempo real utilizando la API de Flight Tracker de aviationstack con PHP.

 

Obtención de las credenciales de la API

 

Para comenzar, debes crear una cuenta en aviationstack. Una vez dentro de tu panel de control, podrás copiar la clave de acceso de la API en la sección "Your API Access Key".

 

Configuración de la API

 

Necesitaremos la clave de acceso Access Key para autenticarnos y acceder a la API de aviationstack.

A continuación, construiremos la consulta utilizando la función http_build_query() para pasar los parámetros necesarios a la API de aviationstack.

Define la clave de acceso en el parámetro "access_key".

 
$queryString = http_build_query([ 
    'access_key' => 'TU_ACCESS_KEY' 
]);
 

Solicitud HTTP GET

 

Para obtener los datos de los vuelos, haremos una llamada a la API de aviationstack utilizando una solicitud HTTP GET a través de cURL.

 
// URL de la API con la query string 
$apiURL = sprintf('%s?%s', 'http://api.aviationstack.com/v1/flights', $queryString); 
// Inicializamos cURL 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $apiURL); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
// Ejecutamos la API 
$api_response = curl_exec($ch); 
// Cerramos cURL 
curl_close($ch);
 

Es importante asegurarnos de que la llamada a la API se realice de manera segura, por lo que debemos utilizar la URL con "https":

https://api.aviationstack.com

 

Estado de los vuelos e información general

 

Después de realizar la llamada a la API, obtendremos el estado actual de los vuelos y la información relacionada en formato JSON. Inicialmente, la API de aviationstack devuelve los siguientes datos de geolocalización:

  • Fecha del vuelo (flight_date)
  • Estado del vuelo (flight_status)
  • Información de la salida y la llegada (departure/arrival)
    • airport
    • timezone
    • iata
    • icao
    • terminal
    • gate
    • delay
    • scheduled
    • estimated
    • actual
    • estimated_runway
    • actual_runway
  • Información de la aerolínea (airline)
    • name
    • iata
    • icao
  • Información del vuelo (flight)
    • number
    • iata
    • icao
    • codeshared
  • Información del avión (aircraft)
    • registration
    • iata
    • icao
    • icao24
  • Datos en vivo (live)
    • updated
    • latitude
    • longitude
    • altitude
    • direction
    • speed_horizontal
    • speed_vertical
    • is_ground

Utilizando la función json_decode(), podemos convertir los datos obtenidos en JSON a un arreglo en PHP.

Aquí tienes un ejemplo de cómo extraer la información de los vuelos utilizando la API de aviationstack:

 
$api_result = json_decode($api_response, true);
 

A continuación, se muestra el código completo para obtener información global de vuelos utilizando la API de aviationstack con PHP.

 
<?php 
// Definimos la Access key de la API
$queryString = http_build_query([ 
    'access_key' => 'TU_ACCESS_KEY', 
    'limit' => 10   
]); 
// URL de la API con la query string
$apiURL = sprintf('%s?%s', 'http://api.aviationstack.com/v1/flights', $queryString); 
// Inicializamos cURL 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $apiURL); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
// Ejecutamos la API
$api_response = curl_exec($ch); 
// Cerramos cURL 
curl_close($ch);
// Convertimos el JSON en un array 
$api_result = json_decode($api_response, true); 
// Mostramos los datos de los vuelos
foreach ($api_result['data'] as $flight) { 
    if (!$flight['live']['is_ground']) { 
       echo sprintf("%s vuelo %s de %s (%s) a %s (%s) está en el aire.", 
            $flight['airline']['name'], 
            $flight['flight']['iata'], 
               $flight['departure']['airport'], 
               $flight['departure']['iata'], 
               $flight['arrival']['airport'], 
               $flight['arrival']['iata'] 
               ), PHP_EOL; 
          echo '<br/>';
        } 
    } 
    ?>
 

Este código te permitirá obtener información actualizada de vuelos utilizando la API de aviationstack. Asegúrate de reemplazar 'TU_ACCESS_KEY' con tu clave de acceso personal proporcionada por aviationstack.



Image by katemangostar on Freepik
 
by Janeth Kent Date: 06-06-2023 API PHP json visitas : 697  
 
Janeth Kent

Janeth Kent

Licenciada en Bellas Artes y programadora por pasión. Cuando tengo un rato retoco fotos, edito vídeos y diseño cosas. El resto del tiempo escribo en MA-NO WEB DESIGN AND DEVELOPMENT.

 
 
 

Artículos relacionados

Ejecución de funciones PHP en AWS Lambda y API Gateway

¿Qué es AWS Lambda? AWS Lambda es un servicio de procesamiento sin servidor que puede ejecutar código en respuesta a eventos o condiciones predeterminados y administrar automáticamente todos los recursos de…

Cómo enviar un correo electrónico desde un formulario de contacto HTML

En el artículo de hoy vamos a escribir sobre cómo hacer un formulario que funcione y que al pulsar ese botón de envío sea funcional y envíe el correo electrónico…

6 Formas de leer archivos en PHP, con strings, array y más

Bienvenido a un tutorial sobre cómo leer archivos en PHP. Sí, así es, ¿qué tan difícil puede ser leer archivos en PHP? Se sorprenderá... No es tan sencillo como algunos…

Instalar Laravel Homestead en Windows 10

Instalar Homestead Mediante Vagrant Laravel Homestead es una máquina virtual que viene ya preparada para el desarrollo de proyectos con Laravel y otras tecnologías de PHP . Al ser una máquina…

Cookies HTTP: cómo funcionan y cómo usarlas

Hoy vamos a escribir sobre la forma de almacenar datos en un navegador, por qué los sitios web utilizan cookies y cómo funcionan en detalle. Continúa leyendo para averiguar cómo implementarlas…

Node.js: herramientas de código abierto para los desarrolladores

De la amplia gama de herramientas disponibles para simplificar el desarrollo de Node.js, aquí están las mejores. Una encuesta en StackOverflow afirma que el 49% de los desarrolladores usan Node.js para…

PHP 8.0: mas rápido que nunca con el compilador JIT

Probablemente ya habéis oido la noticia hace unos meses de que el compilador JIT será agregado a PHP 8. Ya desde PHP 7.0, se han hecho cambios para mejorar el…

Guía sencilla para convertir imágenes a WebP en PHP

El 30 de septiembre de 2010, Google anunció la publicación de un nuevo estándar abierto para la compresión con pérdida de gráficos de 24 bits en la web. La base…

Renderización lado servidor de Vue.js on Php

¿Intentas que el renderizado del lado del servidor funcione con PHP para renderizar tu aplicación Vue.js pero se atasca? Hay un montón de grandes recursos por ahí, pero hasta ahra no…

Cómo instalar Caddy Web Server con PHP-FPM en Ubuntu 16.04

El Caddy o Caddy web server es un servidor web de código abierto habilitado para HTTP/2 escrito en Go. Caddy puede funcionar en varios sistemas, incluyendo los que funcionan con…

PHP: como soluciónar el error «The e modifier is no longer supported»

Desde la versión 7 ya tenemos error al usar el modificador e con el preg_replace(). de hecho el modificador e, correspondiente a la constante PCRE PREG_REPLACE_EVAL, era antes utilizado en…

Como construir una API RESTful - Guía paso a paso

En este artículo, voy a hablar sobre cómo diseñar mejor sus APIs RESTful para evitar errores comunes Como desarrolladores de software, la mayoría de nosotros usamos o construimos APIs de REST…

Clicky