コンテンツにスキップ

PHP GTFS-realtime 言語バインディング

PHP バージョン

[GTFS-realtime](](https://github.com/google/transit/tree/master/gtfs-realtime) プロトコル バッファ仕様から生成された PHP クラスを提供します。これらのクラスを使用すると、バイナリ プロトコル バッファ GTFS-realtime データ フィードを PHP オブジェクトに解析できます。

他の言語のバインディングについては、gtfs-realtime-bindings プロジェクトをご覧ください。

非推奨

2019 年 2 月現在、公式のgoogle-protobuf Google プロトコル ツールは proto2 ファイルをサポートしていません。そのため、proto2 ファイルの公式サポートが Google プロトコル バッファ ツールに実装されるまで、PHP バインディングは非推奨となります。

依存関係を追加する

独自のプロジェクトでgtfs-realtime-bindings-phpクラスを使用するには、まず Packagist Composer パッケージ をインストールする必要があります。これを行うには、 composer.jsonファイルに依存関係を追加します:

"require": {
 "google/gtfs-realtime-bindings": "xyz"
}

xyz は最新のリリース バージョンです:

PHP バージョン

次に、Composer の依存関係を更新します:

composer update

サンプル コード

次のコード スニペットは、特定の URL から GTFS リアルタイム データ フィードをダウンロードし、それをFeedMessage (GTFS リアルタイム スキーマのルート タイプ) として解析し、結果。

``p require_once ’vendor/autoload.php’;

use transit_realtime FeedMessage;

$data = file_get_contents("GTFS-REALTIME ソースの URL をここに入力します"); $feed = new FeedMessage(); $feed->parse($data); foreach ($feed->getEntityList() as $entity) { if ($entity->hasTripUpdate()) { error_log("trip: ". $entity->getId()); } } ```

gtfs-realtime.proto から生成される PHP クラスの命名規則の詳細については、[gtfs-realtime.php ソース ファイル](https: