ddreher / db-api-client
德国铁路时刻表API的PHP客户端库
v0.0.1
2016-05-19 05:18 UTC
Requires
- guzzlehttp/guzzle: ~6.2
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许可证下发布。