This package is abandoned and no longer maintained. No replacement package was suggested.

PHPCR API provides an API to explore PHPCR repositories.

2.0.0 2014-07-16 19:41 UTC

This package is auto-updated.

Last update: 2020-04-04 09:42:41 UTC


archived Archived Repository
This code is no longer maintained. Feel free to fork it, but use it at your own risks.

PHPCR API Build Status

PHPCR API provides an API to explore PHPCR repositories. The current implementation supports Jackalope Jackrabbit and Doctrine DBAL.


The recommended way to install phpcr-api is through Composer. Just create a composer.json file, and run the composer install command to install it:

    "require": {
        "marmelab/phpcr-api": "dev-master"


$repositoriesConfig = array(
    'Repository Test' => array(
        'factory' => 'jackalope.jackrabbit',
        'parameters' => array(
            'jackalope.jackrabbit_uri' => 'http://localhost:8080/server',
            'credentials.username' => 'admin',
            'credentials.password' => 'admin'
    'Repository Test2' => array(
        'factory' => 'jackalope.doctrine-dbal',
        'parameters' => array(
            'jackalope.doctrine_dbal_connection' => $dbalConnectionInstance,
            'credentials.username' => 'admin',
            'credentials.password' => 'admin'

$loader = new \PHPCRAPI\API\RepositoryLoader($repositoriesConfig);

$repositoryTest = new \PHPCRAPI\API\Manager\RepositoryManager(
    $loader->getRepositories()->get('Repository Test')

$session = $repositoryTest->getSessionManager('MyWorkspace');

$rootNode = $session->getNode('/');

The factory setting is the type of PHPCR repository you want to browse. See available factories in config/factories.yml.

See src/PHPCRAPI/API/Manager to discover all available methods.


This application is available under the MIT License, courtesy of marmelab.