我正在使用很棒的PhalconPHP Framework。我有不同的用戶級別,並加載正確的控制器,我在dispacher類中使用命名空間。我可以在PhalconPHP中使用多個命名空間嗎?
$di->set('dispatcher', function() {
//Create an EventsManager
$eventsManager = new EventsManager();
//Remove extension before dispatch
$eventsManager->attach("dispatch:beforeDispatchLoop", function($event, $dispatcher) {
switch($user->getUserType()) {
case 1:
//Student
$dispatcher->setNamespaceName('student');
break;
case 2:
//Userlevel 2, yet to come
break;
case 3:
//Admin &| Minion
$dispatcher->setNamespaceName('admin');
}
});
$dispatcher = new MvcDispatcher();
$dispatcher->setEventsManager($eventsManager);
return $dispatcher;
});
的命名空間registerd像這樣:
$loader->registerNamespaces(
array(
'Student' => __DIR__ . '/../../app/controllers/student',
'Admin' => __DIR__ . '/../../app/controllers/admin,
)
);
這很好,但現在我也想要子目錄,比如「..controllers/admin/sub」。 「/ sub」中的控制器也必須位於「admin」命名空間中。 (因爲調度員)或者我可以以某種方式做類似命名空間Admin/*和PHP包括所有子目錄?
我希望我能解釋我的問題,有人可以幫忙。 =)