carlosafonso / emt-sdk-php
马德里EMT OpenData API的非官方PHP SDK
v0.1.0
2017-01-03 23:02 UTC
Requires
- php: ~5.6|~7.0
- guzzlehttp/guzzle: ^6.2
Requires (Dev)
- phpunit/phpunit: ~4.0||~5.0
- squizlabs/php_codesniffer: ^2.3
- symfony/var-dumper: ^3.2
This package is auto-updated.
Last update: 2024-08-29 04:31:15 UTC
README
这是一个马德里市政公交公司(EMT)OpenData API的非官方PHP SDK。
安装
通过Composer
$ composer require carlosafonso/emt-sdk-php
用法
您需要一套由EMT OpenData团队颁发的认证凭据。这些凭据可以通过以下链接获取:http://opendata.emtmadrid.es/Formulario。
创建一个SDK客户端实例,传入上述凭据
$clientId = 'FOO.BAR.BAZ'; $passkey = 'ABCDEFGH-1234-ABCD-1234-ABCDEFGHIJKL' $client = new Afonso\Emt\BusClient($clientId, $passkey);
然后调用任何可用的方法
$data = $client->getRouteLines([123], new \DateTime()); print_r($data);
它应该输出类似以下内容(为了可读性已截断)
Array
(
[0] => stdClass Object
(
[line] => 123
[secDetail] => 10
[orderDetail] => 1
[node] => 1425
[distance] => 0
[distancePreviousStop] => 0
[name] => PZA.DE LEGAZPI-MAESTRO ARBOS
[latitude] => 40.390813555735
[longitude] => -3.6951516754786
)
[1] => stdClass Object
(
[line] => 123
[secDetail] => 10
[orderDetail] => 1
[node] => 930
[distance] => 839
[distancePreviousStop] => 839
[name] => ANTONIO LOPEZ-AV.CORDOBA
[latitude] => 40.386984182818
[longitude] => -3.6982344337479
)
)
每个网络服务都有自己的客户端实现
$busClient = new Afonso\Emt\BusClient($clientId, $passkey); $geoClient = new Afonso\Emt\GeoClient($clientId, $passkey); /* (additional clients are on the works) */
可用方法
此库的当前版本公开了BUS网络服务(http://opendata.emtmadrid.es/Servicios-web/BUS)的所有API端点。
预计很快将实现其他服务。
变更日志
请参阅CHANGELOG以获取有关最近更改的更多信息。
测试
$ composer test
贡献
请参阅CONTRIBUTING和CONDUCT以获取详细信息。
安全性
如果您发现任何与安全性相关的问题,请通过电子邮件carlos.afonso.perez@gmail.com联系,而不是使用问题跟踪器。
鸣谢
许可证
MIT许可证(MIT)。请参阅许可证文件以获取更多信息。