1

我正在按照graphaware 提供的教程进行操作,并且在尝试执行基本使用教程时不断收到以下错误:

致命错误:GraphAware\Neo4j\Client\HttpDriver\Session::run() 的声明必须与 C 中的 GraphAware\Common\Driver\SessionInterface::run($statement, array $parameters = Array, $tag = NULL)兼容:\ProgramData\ComposerSetup\bin\vendor\graphaware\neo4j-php-client\src\HttpDriver\Session.php第 24 行

这是我正在执行的代码:

<?php

require_once 'C:\ProgramData\ComposerSetup\bin\vendor\autoload.php';

use GraphAware\Neo4j\Client\ClientBuilder;

$client = ClientBuilder::create()
->addConnection('default', 'http://neo4j:password@localhost:7474') // Changed the login info back to default
->addConnection('bolt', 'bolt://neo4j:password@localhost:7687') // Changed the login info back to default
->build();

$result = $client->run("MATCH (n:User) RETURN n");

?>

我已经尝试多次删除和读取 Neo4J PHP 客户端,但这并不能解决它

我正在使用 Neo4J v3.0.6 并且已经有同样的问题好几天了。任何帮助表示赞赏。

编辑:作曲家.json

{
"require": {
    "everyman/neo4jphp": "dev-master",
    "graphaware/neo4j-php-client": "4.0"
}
}
4

2 回答 2

2

我有同样的错误。问题是neo4j-php-client (version 4.0.0). 这是我所做的:

  1. 从源文件夹中删除vendor/文件夹和文件。composer.lock

  2. 在您的版本号前面添加一个插入符号composer.json

    "graphaware/neo4j-php-client": "^4.0"
    
  3. 然后composer install通过终端在源文件夹中执行一个。

它安装了最新版本graphaware/neo4j-php-client (4.6.4)并解决了错误。

于 2017-02-05T08:28:14.620 回答
1

我遇到了同样的问题并“解决”了它,但使用了次优的解决方案:

直接(!)在 GraphAware\Common\Driver\SessionInterface 中,我尝试替换

public function run($statement, array $parameters = Array, $tag = NULL);

经过

public function run($statement, $parameters = array(), $tag = null);

这似乎是 Graphaware\Neo4j\Client\HttpDriver\Session 所期望的

它可以工作......现在(直到包更新?)

这可能是一个错误吗?

于 2016-10-21T12:17:05.037 回答