PHP Classes

File: vendor/league/flysystem/docs/adapter/phpcr.md

Recommend this page to a friend!
  Packages of Abed Nego Ragil Putra   Laravel Blogging Platform   vendor/league/flysystem/docs/adapter/phpcr.md   Download  
File: vendor/league/flysystem/docs/adapter/phpcr.md
Role: Auxiliary data
Content type: text/markdown
Description: Auxiliary data
Class: Laravel Blogging Platform
Manage blog posts using Laravel and Bootstrap
Author: By
Last change:
Date: 8 months ago
Size: 1,435 bytes
 

Contents

Class file image Download

layout: default permalink: /adapter/phpcr/ title: PHPCR Adapter

PHPCR Adapter

This adapter works with any PHPCR implementation. Choose the one that fits your needs and add it to your project, or composer will complain that you miss phpcr/phpcr-implementation. See this article for more on choosing your implementation.

Installation

Assuming you go with jackalope-doctrine-dbal, do:

composer require jackalope/jackalope-doctrine-dbal league/flysystem-phpcr

Usage

Bootstrap your PHPCR implementation. If you chose jackalope-doctrine-dbal with sqlite, this will look like this for example:

use League\Flysystem\Filesystem;
use League\Flysystem\Phpcr\PhpcrAdapter;
use Jackalope\RepositoryFactoryDoctrineDBAL;
use Doctrine\DBAL\Driver\Connection;
use Doctrine\DBAL\DriverManager;

$connection = DriverManager::getConnection([
    'driver' => 'pdo_sqlite',
    'path'   => '/path/to/sqlite.db',
]);
$factory = new RepositoryFactoryDoctrineDBAL();
$repository = $factory->getRepository([
    'jackalope.doctrine_dbal_connection' => $connection,
]);
$session = $repository->login(new SimpleCredentials('', ''));

// this part looks the same regardless of your phpcr implementation.
$root = '/flysystem_tests';
$filesystem = new Filesystem(new PhpcrAdapter($session, $root));