Zend_Router_Regex和附加参数

时间:2011-10-04 07:29:30

标签: zend-framework zend-route

我不知道如何实现它。

我有这个路由器

$route = new Zend_Controller_Router_Route_Regex(
                    'category/([-\w]+)(?:/(\d+))?',
                    array('module' => 'dynamic', 'controller' => 'index', 'action' => 'show-category'),
                    array(1 => 'category', 2 => 'pageNumber'),
                    'category/%s/%d'
    );

$router->addRoute('dynamic-categories', $route);

通过使用$ this-> url(...)帮助器,视图中的汇编网址将为/ category / news / 1。我希望我的第一页新闻是/ category / news。我应该使用其他路由来执行此操作还是使用路由器链接。我很沮丧。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用Zend_Controller_Router_Route进行直接映射:

new Zend_Controller_Router_Route(
    '/category/:category/:page',
    array(
        'module' => 'dynamic',
        'controller' => 'index',
        'action' => 'show-category',
        'category' => 'news',
        'page' => 1   
    )
)

将匹配/category//category/news//category/othercategory/category/news/4(仅限示例)。