从url laravel中删除部分段



我有这样的URL:

http://example.com/en/search

现在我想检查URL的第一部分

$lang = Request::segment(1);

,如果与某些条件匹配,我想删除$ lang段。我正在像这样重新返回URL

$url = Request::fullUrl();

现在,我想重建URL为

http://example.com/search

请注意,我不能使用str_replace,因为它在URL的所有部分中搜索,我只想在第一部分中进行搜索和替换。

如果您只想进行快速检查,然后删除第一部分并重定向用户,则可以轻松地做,例如。像这样(对于Laravel 5):

$segments = Request::segments();
$first = array_shift($segments);
if (some_condition) {
    return redirect()->to(implode('/', $segments));
}

尝试类似:

$str = 'http://example.com/en/search';
$part = explode('/',$str,5);
if ($part[3] == 'en') {
    $url = $part[0].'//'.$part[2].'/'.$part[4];
} else { 
    $url = $str;
}
echo '$url:['.$url.']';  // http://example.com/search

相关内容

  • 没有找到相关文章

最新更新