Provides a Doctrine Mapping Reader integration for your Symfony projects.
PHP 5.3+ library that provides a simple and flexible way to load custom mapping data for Doctrine 2.3+ projects.
It supports Yaml, Xml and Annotation drivers which will be chosen depending on currently used mapping driver for your domain objects.
Documentation is available on the official page of DMR.
This bundle can be installed using composer by adding the following in the require
section of your composer.json
file:
{
"require": {
"dmr/dmr-bundle": "0.1.*-dev"
}
}
Note that if your application requires a stability greater stable than dev
you have to include the dmr/dmr
requirement, because only the root package can whitelist stabilities less stable than the configured minimum stability.
{
"require": {
"dmr/dmr": "0.1.*@dev",
"dmr/dmr-bundle": "0.1.*-dev"
}
}
Alternatively, you can download an archive of the bundle and unpack it in the vendor/bundles/DMR/Bundle/DMRBundle
directory of your application, but it is not recommended.
You must register the bundle in your kernel:
<?php
// app/AppKernel.php
public function registerBundles()
{
$bundles = array(
// ...
new DMR\Bundle\DMRBundle\DMRBundle()
);
// ...
}
Reading metadata is pretty simple:
$data = $container->get('dmr.reader')->read('Acme\Entity\User', 'Acme\Doctrine\ExtensionNamespace');
$data = $container->get('dmr.reader')->read('Acme\Document\User', 'Acme\Doctrine\ExtensionNamespace');
// Alternatively
$data = $container->get('dmr.reader')->read($object, 'Acme\Doctrine\ExtensionNamespace');
For more details, you can check out the official page of DMR.
Please provide feedback! We want to make this library useful in as many projects as possible. Please raise a Github issue, and point out what you do and don't like, or fork the project and make suggestions. No issue is too small.