php连接neo4j图数据库以及基本使用

2 篇文章 0 订阅

阅读本博客前,请熟悉neo4j图数据库以及Cypher。

php连接neo4j图数据库的驱动下载地址(无下载积分可留言邮箱):

https://download.csdn.net/download/u013090676/10585050

本博客基于thinkphp框架,所以需要先在ThinkPHP\Library\Vendor\目录下创建neo4j文件夹,下载驱动代码在neo4j文件夹下解压。使用如下(控制器方法中使用):

1、引入库并创建ClientBuilder:

        //引入文件		
        require_once './ThinkPHP/Library/Vendor/neo4j/autoload.php';
		
        //注意此处只采用bolt进行连接neo4j:123456 为图数据库账号密码
	$client = ClientBuilder::create()
		/*->addConnection('default', 'http://neo4j:123456@localhost:7474')*/
		->addConnection('bolt', 'bolt://neo4j:123456@localhost:7687') 
		->build();

2、创建节点:

$result = $client->run('create (n:person) return n');

3、为节点添加属性:

$client->run('CREATE (n:god) SET n += {infos}', ['infos' => ['uid' => '8', 'name' => 'admin']]);

4、批量添加:

$stack = $client->stack();
$stack->push('CREATE (n:person {uid:2, name:"sakuya"})');
$stack->push('CREATE (n:person {uid:3, name:"marisa"})');
$stack->push('CREATE (n:person {uid:4, name:"reimu"})');
$stack->push('CREATE (n:person {uid:5, name:"yuyuko"})');
$stack->push('CREATE (n:person {uid:6, name:"youmu"})');
$stack->push('CREATE (n:person {uid:7, name:"suika"})');
$result = $client->runStack($stack);

5、添加关系(注意:neo4j目前不支持直接添加双向关系,如果是双向的关系,需要添加两次):

$result = $client->run('MATCH(m:person{name:"yuakri"}) MATCH(n:person{name:"sakuya"}) CREATE (m)-[r:friend{time:"1year"}]->(n)');

6、根据id删除节点(注意:这里的id是系统id,不是为节点添加的id属性,注意区别ID(n)与n.id):

$result = $client->run('MATCH (n:person) WHERE ID(n)=2 DELETE n');

7、删除所有节点(注意:有关系的节点必须先删除关系):

$result = $client->run('match(n) delete n');

8、删除所有带关系的节点以及其关系:

$result = $client->run('match(n)-[r]-() delete n,r');

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 23
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值