0
Neo4jPHP를 사용하여 "마스터"노드 (A)에 연결된 모든 노드의 배열을 제공하는 스 니펫을 작성합니다. 노드는 다음과 같이 연결합니다neo4jphp를 사용하여 마스터 노드와 관련된 모든 노드로 배열을 가져옵니다.
A -> B
B -> C
C -> D
C -> E
B -> F
이 내가 neo4jPHP를 사용하여 작성한 코드는 다음과 같습니다
문제는 $ resultArray 매장처럼 (반복 마스터 노드와 관련된 노드가 여기에 설명되어
$client = new Everyman\Neo4j\Client();
$querystring="MATCH path=(n {gid:'58731'})-[:contains*]-(z) RETURN ([x in nodes(path) | x.id]) as names";
$query=new Everyman\Neo4j\Cypher\Query($client,$querystring);
$result=$query->getResultSet();
foreach($result as $resultItem){
$resultArray[] = $resultItem['n'];
}
print_r($resultArray); // prints the array
:
Strange behavior in neo4j when I try to get all the nodes which relate with a master node)
내 질문은 : 한 번만 "마스터"노드와 관련된 모든 노드를 포함하는 배열을 다시 얻으려면 neo4jPhp를 사용하는 방법이 있습니까? 이 같은 뭔가 :
$distinctNodes = [B,C,D,E,F]
감사 D.
감사합니다! 내가 가진 한가지 문제점은 id가 다른 노드의 다른 id와 동일 할 수 있다는 것입니다. DISTINCT를 사용하면이 경우 문제가 발생합니다. 맞습니까? – user1919
예. 이 경우 'id'대신에 고유 한 속성을 사용해야합니다. 유일한 것으로 보장되는 것이 없다면 내부 ID를 사용할 수 있습니다 (ID (z)를 통해). 노드의 내부 ID는 고유하지만 노드가 삭제되면 내부 ID를 새 노드에 다시 할당 할 수 있습니다. 또는 노드 자체 일 수도 있습니다 (즉,'z.id'를'z'로 대체하십시오). 그러나 그들은 단순한 문자열이 아닙니다. – cybersam
확인. 큰. MATCH (n (gid : '58731')) - [: contains * 1 ..] -> (z) RETURN ID (z) 이름으로 – user1919