これまで、暗号クエリを使用してリクエストを送信し、応答を返すために PHP Rest Api を使用していました。応答は、解析が困難な巨大な文字列であり、JSON に変換できません。私は今、Neo4jPHP をインストールしました。私はサイファーで持っていたのと同じクエリを書く方法を見つけようとしています。これは私のクエリです:
MATCH (n:RealNode)-[r:contains*]-(z) WHERE n.gid='123' RETURN n,z;")
私が実際に望んでいるのは、私の n ノードに関連するノードのすべての名前のリストを取得することです (名前は各ノード内のプロパティです)。どうすればいいですか?
オンラインで Neo4jPHP の例を多く見つけることができず、見つけたものは機能していないようです。ここから最新バージョンをダウンロードしました ( https://github.com/jadell/neo4jphp )。
ありがとう。
再編集
私はneo4jサーバーでこのクエリを試します:
MATCH (n)-[r:KNOWS*]-(z) WHERE n.name='Arthur Dent' AND z.name='Ford Prefect' RETURN n,z,r;
互いに接続されている3つのノードをすべて取得します。neo4jPHP を介した同じクエリは、1 つのノードの名前のみを返します。なぜこうなった?
$querystring="MATCH path=(n:RealNode {gid:'58731'})-[:contains*]-(z) RETURN [x in nodes(path) | x.id] as names";
$query=new Everyman\Neo4j\Cypher\Query($client,$querystring);
$result=$query->getResultSet();
print_r($result);
foreach($result as $row){
echo $row['x']->getProperty('name') . "\n";
}