使用Zend_Controller_Router_Route_Regex创建路由

时间:2011-09-22 10:02:26

标签: php zend-framework url-routing

我在application.ini中定义了一个路由,如

router.routes.xx.route = "y/:var/:controller/:action/*"
router.routes.xx.defaults.controller = "page"
router.routes.xx.defaults.action = "index"

我尝试创建另一条路径,必须在网址下使用控制

  1. 仅由一个词组成(www.bla.pl/myname)
  2. 这个词不是“equivalent words”(www.bla.pl/except - dont process)
  3. 将www.bla.pl/myname转换为www.bla.pl/c?var=myname(控制器c带有一些动作a并将值'myname'放入参数var)
  4. 我试着写

    router.routes.w.type  = "Zend_Controller_Router_Route_Regex"
    router.routes.w.route = "(\w)+[^?|/]"
    router.routes.w.reverse = "c/var=%s"
    router.routes.w.defaults.controller = "c"
    router.routes.w.defaults.action = "index"
    router.routes.w.map.var = 1
    

    我做错了什么?

1 个答案:

答案 0 :(得分:0)

为什么不使用正常路线?

router.routes.w.route = "/:var"
router.routes.w.route.defaults.controller = "c"
router.routes.w.route.defaults.action = "index"
router.routes.w.reqs.var = "!(your|forbidden|words)"

这应该按预期工作