我正在尝试在php中实现Graphaware\neo4j客户端neo4j php客户端
我运行composer将文件下载到工作目录并尝试使用启动客户端
require_once(BASEPATH.'vendor/autoload.php');
use GraphAwareNeo4jClientClientBuilder;
$client = ClientBuilder::create()->addConnection('default', 'http://neo4j:myPassword@localhost:7474')->build();
我得到这个错误。
<b>Fatal error</b>: Class 'GraphAwareNeo4jClientClientBuilder' not found in <b>*path_to_my_www_dirindex.php*</b> on line <b>36</b><br />
我为什么看到这个?
我是GraphAware Neo4j客户端的维护人员。
我敢打赌,您在阅读存储库的自述文件时受到了干扰。
当前主分支包含的代码4.0@alpha,因此,如果您在命令行composer require graphaware/neo4j-php-client
中运行,composer很有可能在3.X
系列中安装了最后一个稳定版本,因此不存在所需的类。
我建议您尝试通过运行来安装alpha7版本的客户端
composer require graphaware/neo4j-php-client:^4.0@alpha
如果您有其他问题,请告诉我
我们遇到了neo4j-php-client
也不支持PHP 5.5的问题。虽然"正确"的解决方案是升级到新版本的PHP,但这并不是最方便的——尤其是如果你只是想开始评估这个库的话。需要PHP>=5.6的唯一原因是Neo4j的bolt
协议,所以只要你坚持使用http
协议,一切都会很好。不过,为了让composer
发挥出色,您必须对neo4j-php-client
的composer.json
:进行一些更改
- 将
"php": ">= 5.6"
更改为"php": ">= 5.5"
- 将
"graphaware/neo4j-bolt": "^1.5"
替换为"graphaware/neo4j-common": "^3.0"
我们最终在Github上分叉了库,然后更新了composer.json
,使用了neo4j-php-client
的修改版本。相关部分包括:
{
...
"require": {
...
"graphaware/neo4j-php-client": "dev-OptionalBoltSupport"
},
...
"repositories": [
...
{
"type": "vcs",
"url": "https://github.com/wnielson/neo4j-php-client"
}
]
}
完成此操作后,您可以运行composer update
,并且neo4j-php-client
应该安装良好。
您只需要像文档中所说的那样要求vendor/autoload.php
所以require_once 'vendor/autoload.php';
将解决您的问题
问题是,即使您使用的是use ...
,您的php文件也对您试图创建的php类文件一无所知
您需要使用include或require函数来包含该文件。