Wie verwende ich die global.php / local.php-Konfiguration in der getConfig () eines Moduls in einer Zend Framework 2-Anwendung?

In einer ZF2-Anwendung habe ich einige Cofigs, die: 1. je nach Umgebung unterschiedlich sein müssen; 2. sind spezifisch für ein konkretes Modul. Ich benutze es momentan soHier beschrieben:

global.php & local.php

return array(
    ...
    'modules' => array(
        'Cache' => array(
            'ttl' => 1, // 1 second
        )
    )
    ...
);

Modulklasse

Module {
    ...
    public function getServiceConfig() {
        try {
            return array (
                'factories' => array(
                    'Zend\Cache\Adapter\MemcachedOptions' => function ($serviceManager) {
                        return new MemcachedOptions(array(
                            'ttl'           => $this->getConfig()['modules']['Cache']['ttl'],
                            ...
                        ));
                    },
                    ...
                )
            );
        }
        ...
    }
    ...
}

Es funktioniert einwandfrei, aber ich glaube, dass auf die modulspezifischen Einstellungen über eine zentrale Stelle im Modul zugegriffen werden sollte - diegetConfig() Methode derModule Klasse. So was:

class Module {

    public function getConfig() {
        $moduleConfig = include __DIR__ . '/config/module.config.php';
        $application = $this->getApplicationSomehow(); // <-- how?
        $applicationModuleConfig = $application->getConfig()['modules'][__NAMESPACE__];
        $config = array_merge($moduleConfig, $applicationModuleConfig);
        return $config;
    }
    ...
    public function getServiceConfig() {
        try {
            return array (
                'factories' => array(
                    'Zend\Cache\Adapter\MemcachedOptions' => function ($serviceManager) {
                        return new MemcachedOptions(array(
                            'ttl'            => $serviceManager->get('Config')['modules']['Cache']['ttl'],
                            ...
                        ));
                    },
                    ...
                )
            );
        }
        ...
    }
    ...
}

Das Problem ist, dass ich nicht verstehe, wie ich auf die global.php / local.php configs im zugreifen kanngetConfig() eines Moduls. Wie kann ich es tun?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage