daviddoran/railtime

爱尔兰铁路实时铁路XML web服务的PHP客户端。

dev-master 2013-08-26 18:11 UTC

This package is not auto-updated.

Last update: 2024-09-24 05:20:55 UTC


README

一个用于爱尔兰铁路实时API的PHP库。

使用方法

此包导出的主要类是 \Railtime\API

首先,创建一个新的 API 对象

use \Railtime\API;

$api = new API;

然后,调用各种API方法

$stations = $api->stations();

API 类公开以下方法

Station[]           stations([$station_type])
RunningTrain[]      current_trains([$train_type])
StationPassing[]    station_passings($name_or_code[, $minutes = null])
TrainMovement[]     train_movements($train_id, $train_date)

请务必查看下面的示例

安装

此包可在Packagist上获取。

要使用Composer安装,请将以下内容添加到您的composer.json文件中的"require":部分

"daviddoran/railtime": "dev-master"

安装Composer后,只需运行

php composer.phar install

或者,如果您全局安装了composer

composer install

测试

单元测试包含在test中,配置在phpunit.xml中。

使用composer安装依赖项后,以下命令将运行测试

./vendor/bin/phpunit

示例

获取所有Dart车站的列表

$stations = $api->stations(\Railtime\StationTypeDart);

获取当前运行的干线列车

$trains = $api->current_trains(\Railtime\TrainTypeMainline);

获取通过Howth交汇处的列车列表(默认为下一个90分钟)

//You can use the station's full name
$passings = $api->station_passings("Howth Junction");

//Or use the station's code
$passings = $api->station_passings("HWTHJ");

获取下一个15分钟内通过康诺利的列车列表

//You can also use the station code "CNLLY"
$passings = $api->station_passings("Dublin Connolly", 15);

获取特定一天的列车运行列表

$movements = $api->train_movements("E815", "25 Aug 2013");

检查每站列车到达或延迟的情况

$movements = $api->train_movements("E815", "18 Aug 2013");
foreach ($movements as $stop) {
    if (!$stop->is_origin()) {
        $mins = round($stop->arrival_diff_seconds() / 60);
        echo "-- ", abs($mins), " min ", ($mins > 0 ? "late" : "early"), " --> ";
    } else {
        echo "-- set off --> ";
    }
    echo $stop->location_fullname, "\n";
}

输出将类似以下内容

-- set off --> Greystones
-- 0 min early --> Bray
-- 0 min early --> Shankill
-- 1 min late --> Killiney
-- 1 min late --> Dalkey
-- 2 min late --> Glenageary
-- 2 min late --> Sandycove
-- ✂ -- ✂ -- snip -- ✂ -- ✂ --
-- 3 min late --> Kilbarrack
-- 3 min late --> Howth Junction
-- 2 min late --> Clongriffin
-- 2 min late --> Portmarnock
-- 2 min late --> Malahide

许可证

此项目根据MIT许可证发布 - 有关详细信息,请参阅LICENSE文件。