php - 如何通过 getResultSet() 函数从 cypher Rest API 检索结果

标签 php neo4j cypher

<?php
require("phar://neo4jphp.phar");

$client      = new Everyman\Neo4j\Client();
$queryString = "START n=node:node_auto_index(name="ashish"),m=node:node_auto_index(city="bhilai"),p=node:node_auto_andex(school="bhilai") RETURN n,m,p";
$query       = new Everyman\Neo4j\Cypher\Query($client, $queryString);
$result      = $query->getResultSet();
foreach ($result as $row) {
    echo $row['x']->getproperty('name'), $row['y']->getproperty('city'), $row['z']->getproperty('school');
}

?>

这没有按预期工作,它提供了相同的属性,即:名称

最佳答案

您在查询中返回列“n,m,p”。这些也是结果集中的列的名称。

试试这个:

foreach ($result as $row) {
  echo $row['n']->getproperty('name'), $row['m']->getproperty('city'), $row['p']->getproperty('school');
}

相关文档位于 https://github.com/jadell/neo4jphp/wiki/Cypher-and-gremlin-queries

文档使用“x”和“y”,因为它们是示例查询中的列的名称。从文档中:“如果返回多列数据,则可以按名称访问该行中的每一列。”这些名称来自查询的 RETURN 子句。

关于php - 如何通过 getResultSet() 函数从 cypher Rest API 检索结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15654984/

相关文章:

database - 如何找到每场比赛的前10名?

Neo4j Cypher - 返回具有相同类型的节点子集

c# - neo4j REST API 性能不佳

Neo4j 性能挑战——如何改进?

php - 在 PHP 中使用正则表达式查找并替换 "["和,或 "]"

javascript - 为什么我被 403 禁止?

neo4j - Google Cloud 支持 neo4j 吗?

javascript - 为什么IE浏览器显示 "scanstyles does nothing in webkit/firefox internet explorer"?

PHP 5.3.5 ldap_search() : Search: Can't contact LDAP server

database - 图数据库设计方法