LosoDiAnnotationsBundle
What is LosoDiAnnotationsBundle?
A bundle that enables Dependency Injection by annotations into your Symfony2
projects., (*1)
, (*2)
Requirements
LosoDiAnnotationsBundle requires PHP 5.3 or later. It has been tested with
Symfony v2.0.4., (*3)
You will need at least the following libraries in your vendor directory:, (*4)
If you want to use the functionalities around entity repositories, you will
also need:, (*5)
- Doctrine\DBAL
- Doctrine\ORM
License
The files in this archive are released under the MIT license. You can find a
copy of this license in the LICENSE file., (*6)
Documentation
You can read the documentation in
Resources/doc/index.rst, (*7)
Tests
LosoDiAnnotationsBundle is heavily tested! To run the tests, you'll need to set the path to
the vendors libraries in Tests/bootstrap.php and run the following command from
the project's root:, (*8)
phpunit --colors --bootstrap Tests/bootstrap.php Tests
Also LosoDiAnnotationsBundle uses Travis for continuous integration, see:
, (*9)
Installation
1. Add LosoDiAnnotationsBundle to your vendor libraries:, (*10)
$ cp -r <path_to>/LosoDiAnnotationsBundle vendor/bundles/Loso/Bundle/DiAnnotationsBundle
Or via Git:, (*11)
$ git submodule add git://github.com/loicfrering/LosoDiAnnotationsBundle.git vendor/bundles/Loso/Bundle/DiAnnotationsBundle
2. Register Loso namespace with the autoloader in app/autoload.php:, (*12)
<?php
$loader->registerNamespaces(array(
// ...
'Symfony' => array(__DIR__.'/../vendor/symfony/src', __DIR__.'/../vendor/bundles'),
'Doctrine\\Common' => __DIR__.'/../vendor/doctrine-common/lib',
'Loso' => __DIR__.'/../vendor/bundles',
// ...
));
3. Register LosoDiAnnotationsBundle with your application's kernel in app/AppKernel.php:, (*13)
<?php
public function registerBundles()
{
$bundles = array(
// ...
new Loso\Bundle\DiAnnotationsBundle\LosoDiAnnotationsBundle(),
// ...
);
// ...
return $bundles;
}
Configuration
You can configure LosoDiAnnotationsBundle in one of the following ways in
app/config/config.yml:, (*14)
# app/config/config.yml
loso_di_annotations:
service_scan:
DemoBundle: ~
MyBundle:
base_namespace: [Prefix1, Prefix2\SubPrefix]
arbitrary_key:
dir:
- dir1
- dir2