public
Created

  • Download Gist
annotations_loader.php
PHP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
<?php
 
use Symfony\Component\ClassLoader\UniversalClassLoader;
 
$loader = new UniversalClassLoader();
$loader->registerNamespaces(array(
'Symfony' => array(__DIR__.'/../vendor/symfony/src', __DIR__.'/../vendor/bundles'),
'Sensio' => __DIR__.'/../vendor/bundles',
'JMS' => __DIR__.'/../vendor/bundles',
));
$loader->register();
 
// this is a global dependency, but given the importance of autoloading in Annotations we just
// replaced one global dependency with another to get more control over the autoloading.
\Doctrine\Common\Annotations\AnnotationRegistry::registerNamespaces($loader->getNamespaces());
 
// For Doctrine ORM it can register its annotations with
\Doctrine\Common\Annotations\AnnotationRegistry::registerFile("path/to/DoctrineAnnotations.php");
 
// For any library it can register annotations with:
\Doctrine\Common\Annotations\AnnotationRegistry::registerNamespace("MyLibrary/Annotations", "/path/to/mylibrary-root");

How the \Doctrine\Common\Annotations\AnnotationRegistry itself would be autoloaded in this example?

its loaded by the universal class loader. Its just not included in the configuration here.

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.