Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Composer vs Symfony 2 autoloader

I'm starting to use Composer in a project, in which I historically had all the dependencies under version control.

This project currently uses the Symfony 2 autoloader. Because Composer comes with its own autoloading mechanism (vendor/autoload.php), that makes me wonder if I still need to use the Symfony ClassLoader.

I assume that I could just use the Composer autoloader to autoload my project classes as well:

$loader = require 'vendor/autoload.php';
$loader->add('MyProject', 'src');

Is there any drawback in using the Composer autoloader for the whole project?

Are there features the Symfony autoloader offers that I won't find in the Composer autoloader?

like image 811
BenMorel Avatar asked Dec 15 '12 13:12

BenMorel


1 Answers

You can just require the composer autoloader. The only feature it lacks is the ApcClassLoader which speeds things up with APC but introduces some complexity (you have to clear the cache when deploying). Using composer's -o flag (when installing or running dump-autoload) will give you a classmap one which is more or less equivalent to APC in terms of speed but without the complexity.

like image 185
Seldaek Avatar answered Sep 18 '22 15:09

Seldaek