我有这样的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