2
<?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');
}

?>

これは期待どおりに機能していません。同じプロパティ、つまり名前が付けられています。

4

1 に答える 1

2

クエリで列「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名前はクエリの句に由来します。

于 2013-03-27T12:51:42.080 に答える