<?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/