모듈 내에 여러 개의 네임 스페이스가있는 것이 쉽습니다. Zend Autoloader에 구성을 제공하면됩니다. Zend\Loader\StandardAutoloader
의 경우 설정이 모듈에서 설정할 수 있으며 같은 것을 보일 것이다 다음 Zend\Loader\ClassMapAutoloader
를 들어
public function getAutoloaderConfig()
{
return array(
'Zend\Loader\ClassMapAutoloader' => array(
__DIR__ . '/autoload_classmap.php',
),
'Zend\Loader\StandardAutoloader' => array(
'namespaces' => array(
// This is the default namespace most probably the module dir name
__NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__,
// And this is for your custom namespace within the module
'SomeNamespace' => __DIR__ . '/src/' . 'SomeNamespace',
'OtherNamespace' => __DIR__ . '/src/' . 'OtherNamespace',
),
),
);
}
는 동일한 개념입니다. 네임 스페이스를 클래스 파일과 일치 시키면됩니다.
// file: ~/autoload_classmap.php
return array(
'SomeNamespace\Controller\SomeController' => __DIR__ . '/src/SomeNamespace/Controller/SomeController.php',
'OtherNamespace\Controller\OtherController' => __DIR__ . '/src/OtherNamespace/Controller/OtherController.php',
);
주의해야 할 사항! 하위 모듈 네임 스페이스의 이름이 다른 모듈 네임 스페이스와 충돌하지 않는지 확인하십시오. 이 도움이
희망 :
의 Stoyan
은 매우 간단합니다, 하나 개의 모듈에서 여러 네임 스페이스를 사용하는 방법이있다. 보십시오 [여기] (http://stackoverflow.com/questions/15777140/multiple-namespaces-under-same-module-in-zf2/15779461#15779461) 어떻게 할 수 있는지 확인하십시오. 기꺼이하기 위해서'ModuleManager'로 많은 일을해야한다고 생각합니다. –