如何在symfony中恢复页面的先前路由名称

时间:2020-04-12 18:25:55

标签: symfony routing

例如,我在主页上,它的路由名称为“ home”,在我离开另一个页面进行编辑后,如何在编辑页面上获得上一条路由的名称(这里是home) ?谢谢

1 个答案:

答案 0 :(得分:0)

您可以获取引荐来源网址,并尝试将其与路由服务“匹配”,以查看此路径是否存在路由:

    $referer = $request->headers->get('referer'); // get the referer, it can be empty!
    if (!\is_string($referer) || !$referer) {
        echo 'Referer is invalid or empty.';

        return;
    }

    $refererPathInfo = Request::create($referer)->getPathInfo();


    // try to match the path with the application routing
    $routeInfos = $this->router->match($refererPathInfo);

    // get the Symfony route name if it exists
    $refererRoute = $routeInfos['_route'] ?? '';

签出the full snippet on my blog