2011-08-18 3 views
1

мне нужно, чтобы получить последнюю часть URL при использовании Zend Framework от View (.phtml)Zend Framework Получить последнюю часть URL

Так что мой URL в данный момент что-то вроде: site.com/some/other/path

Мне нужно вернуть «путь» - как я могу это сделать с точки зрения?

ответ

4

Используйте strrpos(), чтобы найти позицию последнего '/' в строке, и вернуть все после него:

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

Чтобы получить URL, вы можете использовать:

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

, как stated by John Cartwright.

1

Либо присвоить переменную вид из контроллера:

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

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

Или, если вы собираетесь использовать это в целях, который используется для нескольких контроллеров (например, макет), создать вспомогательный вид, возвращающий последний компонент пути и вызвать его с точки зрения:

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

Вы можете получить URL из объекта запроса, а затем применить базовое имя() к результату.

echo basename($this->getRequest()->getRequestUri()); 
Смежные вопросы