Git Product home page Git Product logo

neo4jphp's Introduction

Neo4jPHP

Author: Josh Adell [email protected]
Copyright (c) 2011-2012

PHP Wrapper for the Neo4j graph database REST interface

In-depth documentation and examples: http://github.com/jadell/neo4jphp/wiki

API documentation: http://jadell.github.com/neo4jphp

Build Status

Install

Using Composer

  1. From the command line echo '{"require":{"everyman/neo4jphp":"dev-master"}}' > composer.json && composer install
  2. In your PHP script require("vendor/autoload.php");

Connection Test

Create a script named neo4jphp_connect_test.php:

    <?php
    require('vendor/autoload.php');
    
    $client = new Everyman\Neo4j\Client('localhost', 7474);
    print_r($client->getServerInfo());

Change localhost or 7474 to the host name and port of your Neo4j instance.

Execute the script:

> php neo4jphp_connect_test.php

If you see your server's information, then you have successfully connected!

Get Started

Full documentation on all the features of Neo4jPHP is available on the wiki: https://github.com/jadell/neo4jphp/wiki

Contributions

http://github.com/jadell/neo4jphp/graphs/contributors

All contributions are welcome! If you wish to contribute, please read the following guidelines:

  • Before implementing new features, open an issue describing the feature.
  • Include unit tests for any bug fixes or new features.
  • Include only one bug fix or new feature per pull request.
  • Make sure all unit tests run before submitting a pull request.
  • Follow the coding style of the existing code: tabs for indentation, class/method braces on newlines, spaces after commas, etc.
  • Contributing code means that you agree that any contributed code, documentation, or other artifacts may be released under the same license as the rest of the library.

Quick Contributor Setup

Install the developer tools:

> composer install --dev

After making your changes, run the unit tests and code style checker:

> vendor/bin/phing ci

Run only unit tests:

> vendor/bin/phing test

Run only style checker:

> vendor/bin/phing cs

Pull requests will not be accepted unless all tests pass and all code meets the existing style guidelines.

Special Thanks

Changes

0.1.0

  • Cypher and Gremlin results handle nested arrays of nodes/relationships
  • Batch request with no operations succeeds
  • Delete index where index does not exist succeeds

0.0.7-beta

  • Retrieve reference node in one operation
  • Find and return only the first matching relationship
  • Optionally use HTTPS and basic authentication
  • Keep index configuration when retrieved from server
  • Add Memcache caching plugin
  • Do not allow use if cUrl is not detected
  • PHAR is uncompressed by default

0.0.6-beta

  • Create full-text indexes; easier instantiation of common index types
  • Client can be initialized with a string and port instead of a Transport object
  • Setting a null property has the same effect as removing the property
  • Handle scalar values from Gremlin scripts properly
  • Cypher and Gremlin queries can take an array of named parameters
  • Cypher no longer uses positional parameters
  • Use server info to determine Cypher plugin endpoint

0.0.5-beta

  • Open a batch on the client to apply to all subsequent data manipulation calls
  • Batch operations correctly set and update locally cached entities
  • Method chaining on node and relationship save, load and delete
  • Instantiate new nodes and relationships from the client
  • Change to cache initialization; new EntityCache object

0.0.4-beta

  • Client::getServerInfo() retrieves server information and connection test
  • Add to index brought up to Neo4j server 1.5 specification
  • Return paths from Cypher queries
  • Properly encode URL entities
  • Connection and transport errors throw exceptions
  • Fix "unable to connect" bug from returning false positive

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.