Zend Framework获取URL的最后一部分

时间:2011-08-18 18:48:59

标签: php zend-framework

我需要从View(.phtml)

使用Zend Framework时获取URL的最后一部分

所以我的网址目前是:site.com/some/other/path

我需要返回“路径” - 如何从视图中执行此操作?

3 个答案:

答案 0 :(得分:4)

使用strrpos()查找字符串中最后一个'/'的位置,并返回其后的所有内容:

$url = 'site.com/some/other/path';    
echo substr( $url, strrpos( $url, '/' ) + 1 ); // Output: 'path'

要获取网址,您可以使用:

basename($this->getRequest()->getRequestUri());

stated by John Cartwright

答案 1 :(得分:1)

从控制器分配视图变量:

$path = $this->_request->getRequestUri();
$parts = explode('/', $path);
$lastPathComponent = end($parts);

$this->view->lastPathComponent = $lastPathComponent;

或者,如果要在用于多个控制器的视图(例如布局)中使用它,请创建一个返回最后一个路径组件的视图助手,并从视图中调用它:

<?=$this->escape($this->lastPathComponent())?>

答案 2 :(得分:1)

您可以从请求对象获取url,然后将basename()应用于结果。

echo basename($this->getRequest()->getRequestUri());