我将它作为我的 DI 配置的一部分,来自骨架应用程序:
'routes' => array(
'default' => array(
'type' => 'Zend\Mvc\Router\Http\Segment',
'options' => array(
'route' => '/[:controller[/:action]]',
'constraints' => array(
'controller' => '[a-zA-Z][a-zA-Z0-9_-]*',
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
),
'defaults' => array(
'controller' => 'Application\Controller\IndexController',
'action' => 'index',
),
),
),
我想做以下路由:
http://me.com/mycontroller/myaction -->
controller=Applicaiton\Controller\Mycontroller
method=myactionAction
但是,上面的配置会产生:
http://me.com/mycontroller/myaction -->
controller=Mycontroller
method=myactionAction
如您所见,缺少控制器的命名空间。我将命名空间放在哪里/如何?(我知道我可以为每个控制器创建一个 DI 别名,但这会破坏进行段匹配的目的。)