2011-01-10 7 views
1

Ich habe eine URL und ich möchte die Route, die es löst zu wissen, ich möchte eine Funktion, die das Gegenteil von url_for ist - wie gehe ich darüber?Symfony route_for Funktion

Edit: beachten Sie, dass die URL auf die aktuelle URL unterscheidet

Antwort

4

Sie sollten nur in der Lage sein sfPatternRouting::findRoute() zu verwenden. zum Beispiel:

$routing = sfContext::getInstance()->getRouting(); // or $this->context->getRouting() in an action 
if($route = $routing->findRoute($url)) 
{ 
    $routeName = $route['name']; 
} 

, wenn Sie es in der Ansicht verwenden müssen, dann könnte man Helfer wie myUrlHelper.php mit machen:

/* 
* Return routing info for an url 
* 
* @param string $url 
* @return Array|Boolean 
*/ 
function route_for($url) 
{ 
    return sfContext::getInstance()->getRouting()->findRoute($url); 
}