saeven/zf2-dynamic-modules

Dynamic module loader for ZF2

Maintainers

👁 Saeven

Package info

github.com/Saeven/zf2-dynamic-modules

pkg:composer/saeven/zf2-dynamic-modules

Statistics

Installs: 25

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

dev-master / 0.1.2.x-dev 2015-10-16 19:36 UTC

Requires

  • php: >=5.5

Requires (Dev)

None

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 91267020ea5f8af3307b78c07af30b49dae0514c

formzf2Zend FrameworkFormsgenerate

This package is auto-updated.

Last update: 2026-06-14 21:57:39 UTC


README

I needed a means to dynamically wire modules into ZF2. This overrides the ModuleManager to create a system where closure conditions can be used to modify the application config's module array.

Configuration is very simple, and is done in your application.config.php, not in your module config!

Installation

composer require saeven/zf2-dynamic-modules

application.config.php

return [

 'service_manager' => [
 'factories' => [
 'ModuleManager' => 'CirclicalModuleLoader\Service\Factory\ModuleManagerFactory',
 ],
 ],

 'modules_conditional' => [
 'SomeModule' => function(){ return true; }
 ],

 'modules' => [

 // usual modules

 ],

 'module_listener_options' => [
 'config_glob_paths' => [
 'config/autoload/{,*.}{global,local}.php',
 ],
 'module_paths' => [
 './module',
 './vendor',
 ],
 ],
];

The magic happens in the closure that accompanies the modules_conditional array. Your closure would return true or false based on environment conditions.

Todo - this was done to conditionally load modules based on route, and perhaps, based on database data.