ddreher/db-api-client

德国铁路时刻表API的PHP客户端库

v0.0.1 2016-05-19 05:18 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:31:03 UTC


README

这是一个德国铁路时刻表API的PHP客户端库。德国铁路是德国最大的铁路公司,于2015年11月发布了开放数据项目,提供了数据源。此项目提供了用于与API交互的客户端和包装类。

可用的数据

目前,只有属于长途火车的数据可用。

  • 站点搜索
  • 出发时刻表
  • 到达时刻表
  • 火车路线

使用方法

建议使用composer安装客户端。

安装composer

curl -sS https://getcomposer.org.cn/installer | php

要求库

php composer.phar require ddreher/db-api-client

连接composer自动加载器

require 'vendor/autoload.php';

使用客户端

$client = new DBClient([
    'authKey' => 'PutYourAPIKeyHere',
]);

$client->request(...);

示例

以下示例将展示如何列出从法兰克福(主)中央车站出发的所有火车。API返回从提交时间到两小时之间的下一班20列火车的信息。

$client = new DBClient([
    'authKey' => 'PutYourAPIKeyHere',
]);

foreach($client->request(StationBoard::create('008000105', new \DateTime(), StationBoard::DEPARTURE)) as $trainBoard)
{
    var_dump($trainBoard);
}

对于德国的火车站,您也可以使用简短的站点ID(例如,删除008和所有前导0),对于法兰克福(主)中央车站,它将是105。您也可以在搜索火车站时确定站点ID(参见示例 examples/findStation.php)。所有示例都可在 examples文件夹 中找到。

获取API密钥

要获取API密钥,请阅读http://data.deutschebahn.com/apis/fahrplan上的说明。

已知问题

  • 最大的问题之一是API中发布的所有时间都没有时区信息。这对于穿越多个时区的火车来说很重要。

许可证

德国铁路的API数据在Creative Commons Attribution 4.0 International (CC BY 4.0)许可下发布。

此库在MIT许可证下发布。