首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Neo4j数据库将json导出为文件

使用Neo4j数据库将json导出为文件
EN

Stack Overflow用户
提问于 2015-08-13 20:09:55
回答 1查看 269关注 0票数 0

我使用了以下命令行:

代码语言:javascript
复制
:POST /db/data/transaction/commit {"statements":[{"statement":"match n return n"}]}

当我将此查询设置为PHP变量时,会得到以下错误:

代码语言:javascript
复制
Fatal error: Uncaught exception 'Neoxygen\NeoClient\Exception\Neo4jException' with message 'Neo4j Exception with code "Neo.ClientError.Statement.InvalidSyntax" and message "Invalid input ':' in C:\wamp\www\PhpProjectNeo4j1\vendor\neoxygen\neoclient\src\Extension\AbstractExtension.php on line 88

请您向我解释一下,如何在PHP中添加这个命令?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-13 22:03:47

您看过NeoClient文档了吗?

唯一的用法是:

$result = $client->sendCypherQuery('MATCH (n) RETURN n')->getResult();

如果您想要导出到json,客户机中没有魔法,只需使用返回的节点对象,创建一个数组并将其编码为json:

代码语言:javascript
复制
$nodes = [];
foreach ($result->getNodes() as $node) {
  $nodes[] = [
            'id' => $node->getId(),
            'labels' => $node->getLabels(),
            'properties' => $node->getProperties()
            ];
}

var_dump(json_encode($nodes));

编辑:

为了获得结果对象,需要启用ResponseFormatting服务:

例子:

代码语言:javascript
复制
$client = ClientBuilder::create()
    ->addDefaultLocalConnection()
    ->setAutoFormatResponse(true)
    ->build();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31997517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档