euro-ix / ixf-client-php
用于RESTful访问IX-F数据库的PHP客户端
dev-master
2014-05-14 13:00 UTC
Requires
- php: >=5.3
- ext-curl: *
- ext-json: *
- ext-mbstring: *
Requires (Dev)
- phpunit/phpunit: 4.1.*
This package is auto-updated.
Last update: 2024-09-19 05:08:25 UTC
README
IXF数据库的PHP RESTful接口,
安装
此库最好与Composer一起使用。只需在您的composer.json
中添加以下内容:
"require": { "euro-ix/ixf-client-php": "dev-master" }
如果您没有使用composer,请参阅示例文件以获取示例包含列表。
用法
首先,使用端点(正式端点将在上线时提供)和您的凭据初始化API
IXF\IXF::setApiBase( 'https://www.example.com/api' ); IXF\IXF::setApiUser( 'guest' ); IXF\IXF::setApiPass( 'guest' );
您可以通过以下方式获取所有IXP的数组并打印它们的名称、简称以及经纬度
$ixps = IXF\ApiResource::all( 'IXP' ); foreach( $ixps as $o ) echo $o->full_name . '[' . $o->short_name . '] => ' . $o->lat . ', ' . $o->lon . "\n";
您可以使用skip和limit选项如下
$ixps = IXF\ApiResource::all( 'IXP', [ 'skip' => 10, 'limit' => 5 ] );
默认排序顺序是按ID。
您可以通过id获取特定的IXP并对其进行如下编辑
$ixp = IXF\ApiResource::retrieve( 'IXP', $id ); $ixp->short_name = 'NEW_SHORTNAME'; $ixp->save();
您也可以通过以下方式删除该IXP
$ixp->delete();
最后,通过以下方式创建IXP
$newObjId = IXF\ApiResource::create( 'IXP', [ "full_name" => "Test IXP", "short_name" => "TIXP" ] ); $newIXP = IXF\ApiResource::retrieve( 'IXP', $newObjId );
完整的文档可以在wiki中找到。
文档和测试
请参阅tests/中的示例测试套件,这些套件将展示代码的工作方式。
上传后我们将链接API文档。
源代码/起源故事
由Barry O'Donovan撰写,他是INEX的成员,在2014年5月英国谢菲尔德举行的euro-ix黑客马拉松期间。
欢迎提出问题和拉取请求。
Stripe为他们的支付网关创建了一个美丽的API。他们在MIT许可证下开源了PHP库。此库基于此。
(几小时后) 嗯嗯... 美丽的API界面,API库的代码糟糕透顶。使用它是错误的,但这是我现在的床。我删除了70%的冗余代码,它稍微好一些。