如何使用模块,控制器和视图生成URL?

时间:2011-11-12 21:45:41

标签: php zend-framework

如果模块,控制器和视图名称已知,是否有办法在zend中生成完整的URL?

1 个答案:

答案 0 :(得分:3)

我假设您的意思是模块,控制器和操作,因为视图操作(通常)确定。 < / p>

在视图中

echo $this->url(array('module' => $module, 
                      'controller' => $controller, 
                      'action' => $action));

未设置任何参数,默认为当前值,因此在任何给定视图中:

echo $this->url(); //link for the current request

该函数还接受另外两个参数:url($urlOptions, $name, $reset)$name允许您指定路由名称,$reset将清除生成的任何当前参数的网址。

在控制器中

这实际上没有记录,但遵循重定向器帮助程序的结构(事实上,我相信它由重定向器帮助程序使用):

$url = $this->getHelper('url')->simple($action, $controller, $module, $params);

您还可以使用查看助手后面的url()方法:

$url = $this->getHelper('url')->url(array('module' => $module, 
                                          'controller' => $controller, 
                                          'action' => $action));