Neo4j Bolt PHP
PHP low level Driver for Neo4j's binary Bolt Protocol
About
Fork of no longer maintained graphaware/neo4j-bolt-php project.
This fork aims to maintain and update PHP Bolt driver to the newest version (V4). This driver is curently compatible with graphaware/common
and can be used as drop in replacement to be used in graphaware/neo4j-php-client, but eventually it will drop support for it.
Supported versions
- Bolt V1 for Neo4j 3.0 to Neo4j 3.5
- Bolt V2 for Neo4j 3.4 to Neo4j 3.5
- Bolt V3 for Neo4j 3.5+
- Bolt V4 for Neo4j 4.0+
Structures
Point2D
Point3D
Duration
LocalDatetime
andDateTime
(zoned and offset)Time
andLocalTime
Duration
- PHP's
\DateTime
(converts to neo4j's zonedDateTime
) - PHP's
\DateInterval
(converts toDuration
)
Requirements:
- PHP 7.2+
- Neo4j 3.0+
- PHP Sockets extension available
bcmath
extensionmbstring
extension
Installation
Require the package in your dependencies :
composer require plumtreesystems/neo4j-bolt
Usage
TODO
- add proper result cursor
- add support for async (ReactPHP)
Bug reports and Pull requests are welcome!
Credits
Since Bolt V2, V3 and V4 protocols are undocumented, other official and unofficial drivers were used as a reference. Big thanks goes to bolt-rs project.