Let’s say we have a custom class (for example an external library) that we want to use in a Zend 2 application, but it has no namespace and we also do not want to use Composer. Here’s one way to do it.
Here’s our custom class, which is located in /<module>/libs/MyClass.php.
class MyClass { // all kind of interesting stuff happens here... }
In Module.php add a ClassMapAutoloader to the getAutoloaderConfig function. The StandardAutoloader is used to load the other classes of the module.
public function getAutoloaderConfig() { return array( 'Zend\Loader\ClassMapAutoloader' => array( __DIR__ . '/autoload_classmap.php', ), 'Zend\Loader\StandardAutoloader' => array( 'namespaces' => array( __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__, ), ), ); }
The autoload_classmap.php is created at the same level als Module.php and looks like this:
return array( 'MyClass' => __DIR__ . '/libs/MyClass.php', );
No Comments