ModHelper

Psr4AutoloaderClass

A general-purpose implementation that includes the optional functionality of allowing multiple base directories for a single namespace prefix.

1 // instantiate the loader
2 $loader = new \Example\Psr4AutoloaderClass;
3 
4 // register the autoloader
5 $loader->register();
6 
7 // register the base directories for the namespace prefix
8 $loader->addNamespace('Foo\Bar', '/path/to/packages/foo-bar/src');
9 $loader->addNamespace('Foo\Bar', '/path/to/packages/foo-bar/tests');

The following line would cause the autoloader to attempt to load the \Foo\Bar\Qux\Quux class from /path/to/packages/foo-bar/src/Qux/Quux.php:

1 new \Foo\Bar\Qux\Quux;

The following line would cause the autoloader to attempt to load the \Foo\Bar\Qux\QuuxTest class from /path/to/packages/foo-bar/tests/Qux/QuuxTest.php:

1 new \Foo\Bar\Qux\QuuxTest;

Code obtained from PHP Framework Interoperability Group