PHP GTFS-realtime Language Bindings¶
Proporciona clases PHP generadas a partir de GTFS-realtime Protocolo Especificación del buffer. Estas clases le permitirán analizar un protocolo binario Buffer GTFS en tiempo real para alimentar datos en objetos PHP.
Para enlaces en otros idiomas, consulte el proyecto gtfs-realtime-bindings .
Deprecated
A partir de febrero de 2019, la herramienta oficial de protocolo de Google google-protobuf
no admite archivos proto2. Como resultado, estamos desaprobando los enlaces de PHP hasta que se implemente el soporte oficial para archivos proto2 en las herramientas de búfer de protocolo de Google.
Agregue la dependencia¶
Para usar clases gtfs-realtime-bindings-php
en su propio proyecto, necesita
instalar primero el paquete Packagist Composer
. Para hacerlo
, agregue una dependencia en su archivo composer.json
:
"require": {
"google/gtfs-realtime-bindings": "x.y.z"
}
Donde xyz
es la última versión de lanzamiento:
Luego actualice sus dependencias de Composer:
composer update
Código de ejemplo¶
El siguiente fragmento de código demuestra la descarga de un feed de datos GTFS en tiempo real desde una URL particular, analizándolo como un FeedMessage (el tipo raíz del esquema GTFS en tiempo real), e iterando sobre los resultados.
require_once 'vendor/autoload.php';
use transit_realtime\FeedMessage;
$data = file_get_contents("URL OF YOUR GTFS-REALTIME SOURCE GOES HERE");
$feed = new FeedMessage();
$feed->parse($data);
foreach ($feed->getEntityList() as $entity) {
if ($entity->hasTripUpdate()) {
error_log("trip: " . $entity->getId());
}
}
Para obtener más detalles sobre las convenciones de nomenclatura para las clases PHP generadas a partir de , gtfs-realtime.proto, consulte el archivo fuente gtfs-realtime.php.