Php Zend 2从控制器访问不同的url

Php Zend 2从控制器访问不同的url,php,zend-framework2,Php,Zend Framework2,是否有方法访问与控制器名称不同的url 比如,在我的现实生活中,我想访问这个url,而男人是一个类别。我的控制器将是CategoryController,它将显示来自数据库的信息,这些信息适用于所选的任何类别 我之所以需要它,是因为我需要支持多个站点,所以我不能为每个类别都有一个控制器。有办法做到这一点吗?我对2框架相当陌生,但对1.12有相当的了解。谢谢。如果我理解正确,您可以通过路由配置来解决任务 模块的Module.config.php文件: return array( 'rout

是否有方法访问与控制器名称不同的url

比如,在我的现实生活中,我想访问这个url,而男人是一个类别。我的控制器将是CategoryController,它将显示来自数据库的信息,这些信息适用于所选的任何类别


我之所以需要它,是因为我需要支持多个站点,所以我不能为每个类别都有一个控制器。有办法做到这一点吗?我对2框架相当陌生,但对1.12有相当的了解。谢谢。

如果我理解正确,您可以通过路由配置来解决任务

模块的
Module.config.php
文件:

return array(
    'router' => array(
        'routes' => array(
            '<ROUTE_NAME>' => array(
                'type' => 'Zend\Mvc\Router\Http\Segment',
                'options' => array(
                    'route' => '/:category',
                    'constraints' => array(
                        'category' => '<CATEGORY_PATTERN>', // usually [a-zA-Z0-9-_]+
                    ),
                    'defaults' => array(
                        '__NAMESPACE__' => '<CategoryController Namespace>',
                        'controller' => 'Category',
                        'action' => '<Controller method without "action" postfix>',
                    ),
                ),
            ),
        ),
    ),
);
$category = $this->params()->fromRoute('category');