edizduman / neo4j-php-ogm
PHP Object Graph Mapper for Neo4j
1.0.4.RC1
2017-03-23 13:24 UTC
Requires
- php: ^5.6 || ^7.0
- doctrine/annotations: ^1.2
- doctrine/collections: ^1.3
- doctrine/common: ^2.6
- graphaware/neo4j-php-client: ^4.6
- ocramius/proxy-manager: ^2.0 || ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^1.0
- phpunit/phpunit: ^5.2
- symfony/finder: ^3.0
- symfony/stopwatch: ^3.0
This package is not auto-updated.
Last update: 2025-04-04 22:52:42 UTC
README
Object Graph Mapper for Neo4j in PHP
Current Release : 1.0.0-RC1
Basic Usage :
Storing / retrieving entities is done by declaring your entities with mapping annotations. It is very similar to the Doctrine2 ORM.
<?php namespace Demo; use GraphAware\Neo4j\OGM\Annotations as OGM; /** * @OGM\Node(label="User") */ class User { /** * @OGM\GraphId() */ protected $id; /** * @OGM\Property(type="string") */ protected $name; /** * @OGM\Property(type="int") */ protected $age; // Getters and Setters }
$this->em = $this->getEntityManager(); // The entity manager is generally created somewhere else in your application and available in the dependency injection container. // More info about the creation is in the documentation // Creating and Persisting a User $bart = new User('Bart Johnson', 33); $this->em->persist($bart); $this->em->flush(); // Retrieving from the database $john = $this->em->getRepository(User::class)->findOneBy(['name' => 'John Doe']); echo $john->getAge(); // Updating $john->setAge(35); $this->em->flush();
Documentation
The documentation is available here.
Getting Help
For questions, please open a new thread on StackOverflow with the graphaware
, neo4j
and neo4j-php-ogm
tags.
For isses, please raise a Github issue in the repository.
License
The library is released under the MIT License, refer to the LICENSE file bundled with this package.