Aller au contenu

Liaisons de langage PHP GTFS-realtime

Version PHP

Fournit des classes PHP générées à partir du GTFS-realtime Protocole Spécification du tampon. Ces classes vous permettront d’analyser un flux de données binaires en temps réel de protocole Buffer GTFS dans des objets PHP.

Pour les liaisons dans d’autres langues, consultez le projetgtfs-realtime-bindings.

Obsolète

Depuis février 2019, l’outil officiel de protocole Google google-protobuf ne prend pas en charge les fichiers proto2. En conséquence, nous déprécions les liaisons PHP jusqu’à ce que la prise en charge officielle des fichiers proto2 soit implémentée dans les outils de tampon de protocole de Google.

Ajouter la dépendance

Pour utiliser gtfs-realtime-bindings-php classes dans votre propre projet, vous devez installer d’abord le packagist Composer. Pour ce faire, ajoutez une dépendance dans votre fichier composer.json :

"require": {
  "google/gtfs-realtime-bindings": "x.y.z"
}

xyz est la dernière version :

PHP version

Mettez ensuite à jour vos dépendances Composer :

composer update

Exemple de code

L’extrait de code suivant montre le téléchargement d’un flux de données GTFS Realtime à partir d’une URL particulière, en l’analysant comme un FeedMessage (le type racine du schéma GTFS Realtime), et itérer sur les résultats.

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());
  }
}

Pour plus de détails sur les conventions de dénomination des classes PHP générées à partir du le gtfs-realtime.proto, consultez le le fichier source gtfs-realtime.php.