mcuadros / php-cayley
此包已被弃用且不再维护。没有建议的替代包。
PHP 对 Google Cayley 图数据库 REST 接口的包装器。
dev-master
2016-04-12 20:11 UTC
Requires
- php: >=5.5.0
- guzzlehttp/guzzle: ~6.0
Requires (Dev)
- mockery/mockery: 0.9.*
- phpunit/phpunit: 4.8.*
This package is not auto-updated.
Last update: 2020-06-22 05:49:19 UTC
README
PHP 对 Google's Cayley 图数据库 REST 接口的包装器。
Cayley 是一个开源的图数据库,受到 Freebase 和 Google 的 知识图谱 的启发。它的目标是成为开发者的工具箱的一部分,用于处理 Linked Data 以及一般图形形状的数据(语义网、社交网络等)。
Cayley 的默认查询语言是基于 JavaScript 的 Gremlin。php-cayley 是这个 Gremlin Javascript API 的 PHP 版本,Gremlin 的所有方法和模式都适用于这个库。
要求
- php >=5.5.0
- guzzlehttp/guzzle ~6.0
安装
推荐通过 composer 安装 php-cayley。您可以在 Packagist 上查看 包信息。
{ "require": { "mcuadros/php-cayley": "dev-master" } }
用法
基本示例
$cayley = new Cayley\Client(); $query = $cayley->graph()->vertex('Humphrey Bogart')->all(); $result = $cayley->query($query); print_r($result);
形态示例
$cayley = new Cayley\Client(); $filmToActor = $cayley->graph() ->morphism() ->out('/film/film/starring') ->out('/film/performance/actor'); $query = $cayley->graph() ->vertex() ->has('name', 'Casablanca') ->follow($filmToActor) ->out('name') ->all(); $starring = $cayley->query($query); foreach($starring as $actor) { var_dump($actor['id']); }
这些示例基于示例数据库 30kmoviedata.nq.gz
中的数据。
有关更多信息,请阅读 Gremlin Javascript API 文档。
测试
测试在 tests
文件夹中。要运行它们,您需要 PHPUnit。示例
$ phpunit --configuration phpunit.xml.dist
许可证
MIT,请参阅 LICENSE