php-覆盖默认路由,但在必要时调用它
作者:互联网
我正在开发一个具有以下网址的网站:
site.com/james
site.com/james/photos
此网址的架构是:site.com/USERNAME/APPLICATION
用户名和应用程序名称均从db yb程序逻辑中检查.我为此设置了路由,但Zend会将所有请求路由到该路由.
但是有相同的控制器和管理模块.当我转到site.com/admin时,它将查找用户名“ admin”.或者,当我转到site.com/james/profile时,它会尝试查找名为“ profile”的应用程序.但是在UserController中有一个动作.
如何实现此功能?例如,一个前端控制器查找控制器的名称,如果控制器存在,则向其分发请求?
解决方法:
看一下重写Zend_Controller_Action __call($method,$args)方法,如果找不到所需的操作,则调用该方法.
您可以将site.com/USERNAME/APPLICATION检查逻辑放在默认控制器(或最有意义的位置)的__call方法中,然后返回使用默认路由.
标签:url-routing,zend-framework,php 来源: https://codeday.me/bug/20191106/2001009.html