我正在使用Neo4jphp REST,并且在将代码中创建的节点iv与从neo4j数据库检索的节点im相关联时遇到了问题。我正在检索节点,如下所示
$querystring="MATCH(n)"."WHERE has (n.name) and n.name='Interests'"."RETURN n"; $query=new Everyman\Neo4j\Cypher\Query($client,$querystring); $result=$query->getResultSet();
我使用createNode() $friend=$client->makeNode()->setProperty('name',$fname)->save();在代码中创建另一个节点,我使用relateTo()将它们关联起来
$m=$client->getNode($result);
$m->relateTo($friend,$movi)->save();//$movi is a common movie name但是得到这个错误
PHP Catchable fatal error: Object of class Everyman\\Neo4j\\Query\\ResultSet could not be converted to string in /var/www/vendor/everyman/neo4jphp/lib/Everyman/Neo4j/Cache/EntityCache.php 会很感激你的任何意见
发布于 2014-05-19 00:12:36
neo4jphp查询返回一个行对象(即使只有一个响应)
$m=$client->getNode($result);不管用
试一试这个
$querystring="MATCH(n) WHERE has (n.name) and n.name='Interests' RETURN n";
$query=new Everyman\Neo4j\Cypher\Query($client,$querystring);
$result=$query->getResultSet();
foreach($result as $resultItem)
{
$resultArray[] = $resultItem['x'];
//$resultItem['x'] is the node object, now $result array is an array of node objects
}
$friend= $client->makeNode()->setProperty('name',$fname)->save();
$resultArray[0]->relateTo($friend,$movi)->save();此代码还将用于此查询(更容易阅读)
$querystring="MATCH (n {name:"Interests"}) RETURN n";发布于 2015-04-12 12:56:50
我会这样做:
$queryString = "MATCH(n) WHERE has (n.name) and n.name= {name} RETURN ID(n)";
$query = new Everyman\Neo4j\Cypher\Query($client,$queryString,array('name'=>'Interests'));
$result = $query->getResultSet();
$resultArray=array();
foreach($result as $row)
{
array_push($resultArray,$row['n']);
}
$friend = $client->getNode($resultArray[0]);
$friend->relateTo($friend,$movi)-save();https://stackoverflow.com/questions/23699355
复制相似问题