创建节点工作正常,但当我尝试添加标签时,我遇到了以下问题。
PHP致命错误:在第208行的/elixir/apps/home/bin/elixir_classes/class.StorageController.php中调用未定义的方法Everyman \ Neo4j \ Client :: makeLabel()
我在这里做错了什么?
谢谢,
-Edwin
这是相关代码的片段
<?php
use Everyman\Neo4j\Client,
Everyman\Neo4j\Transport,
Everyman\Neo4j\Node,
Everyman\Neo4j\Relationship;
.
.
$neo4jclient = new Client(new Transport('durq2idb10-tst.corp.xyz.com', 7474));
// Create nodes
$controller = new Node($neo4jclient);
$controller->setProperty('serialnumber', "$this->serialnumber")->save();
$controller->setProperty('system_id', "$this->system_id")->save();
$controller->setProperty('hostname', "$this->hostname")->save();
$controller_label=$neo4jclient->makeLabel('Storage Controller');
$controller->addLabels($controller_label)->save();
答案 0 :(得分:1)
您似乎使用的是neo4jphp的旧版本。请使用Composer安装最新版本,如下所述:https://github.com/jadell/neo4jphp/wiki/Getting-started
您需要更改客户端实例化。将行更改为
$neo4jclient = new Client('durq2idb10-tst.corp.xyz.com', 7474);
如果您需要自定义传输(看起来不是这样,但以防万一),您可以执行new Transport\Curl($host, $port)
或new Transport\Stream($host, port)
。