代码之家  ›  专栏  ›  技术社区  ›  Alex Pliutau

zend mod重写或路由

  •  1
  • Alex Pliutau  · 技术社区  · 14 年前



    我在我的web应用程序中使用Zend框架。我有下一个网址: domain/user/user/username user default 模块。第二 是一个 GET 变量。 username 是此变量的值。一切都好。但为了更好的可用性,我希望有下一个网址: domain/user/username

    提前谢谢你。

    2 回复  |  直到 14 年前
        1
  •  2
  •   takeshin    14 年前

    创建 /application/configs/routes.xml :

    <?xml version="1.0" encoding="UTF-8"?>
    <routes>
        <user>
          <route>user/:username/*</route>
          <defaults>
              <module>default</module>
              <controller>user</controller>
              <action>view</action>
              <username>0</username>
          </defaults>
        </user>
    </routes>
    

    Bootstrap.php :

    public function _initRouter()
    {
        $front = Zend_Controller_Front::getInstance();
        $router = $front->getRouter();
        $config = new Zend_Config_Xml(dirname(__FILE__) . '/configs/routes.xml');
        $router->addConfig($config);
    
        return $router;
    }
    

    你也可以在很多其他方面做同样的事情,例如 application.ini .

        2
  •  1
  •   torosgokkurt    14 年前

    resources.router.routes.article.type = "Zend_Controller_Router_Route"
    resources.router.routes.article.route = "user/:username/*"
    resources.router.routes.article.defaults.module = "default"
    resources.router.routes.article.defaults.controller = "user"
    resources.router.routes.article.defaults.action = "view"
    resources.router.routes.article.reqs.username = "guest"
    

    我建议你看看:

    http://framework.zend.com/manual/en/zend.controller.router.html