pimple-register
, (*1)
PimpleRegister is Loader for Pimple\ServiceProviderInterface, (*2)
How to use it?
There are Pimple\ServiceProvider files in one directory:, (*3)
Sample
|-- EmptyDir
|-- Reg1.php
|-- Reg2.php
`-- SubDir
|-- SubReg1.php
`-- SubReg2.php
Reg1.php:, (*4)
<?php
class Reg1 implements Pimple\ServiceProviderInterface
{
function register(Pimple\Container $pimple)
{
$pimple['reg1'] = function ($c) {
return __CLASS__;
};
}
}
RequireLoader
this Loader uses require_once and new Class, (*5)
</php
$dir = './Sample';
$register = new \PimpleRegister\RequireLoader($dir);
$pimple = new \Pimple\Container();
$register->register($pimple);
var_dump($pimple->keys()); // ["reg1", "reg2"]
var_dump($pimple['reg1']); // "Reg1"
//Loaded PHP Files in the directory of one depth
Psr4Loader
this Loader uses composer-autoload, (*6)
Reg1.php:, (*7)
<?php
namespace Sample;
use Pimple;
class Reg1 implements Pimple\ServiceProviderInterface
{
function register(Pimple\Container $pimple)
{
$pimple['reg1'] = function ($c) {
return __CLASS__;
};
}
}
<?php
$dir = './Sample';
$psr_prefix = 'Sample';
$register = new \PimpleRegister\Psr4Loader($dir, $psr_prefix);
$pimple = new \Pimple\Container();
$register->register($pimple);
var_dump($pimple->keys()); // ["reg1", "reg2"]
var_dump($pimple['reg1']); // "Sample\Reg1"
//Loaded PHP Files in directory one depth