Laravel URL 处理:当前 URL
问题
如何获得当前 URL?
回答
要获取当前 URL 的信息,可通过全局辅助函数 url
,在无参调用 url
时,会返回一个 Illuminate\Routing\UrlGenerator
实例,其提供了多个方法可获取当前 URL 的相关信息,考虑下面的例子:
Route::get('/url', function () {
return [
'current' => url()->current(),
'full' => url()->full(),
'previous' => url()->previous()
];
});
如果我们访问 /url
,则返回结果如下:
{
"current": "http://domain.com/url",
"full": "http://domain.com/url?name=jack",
"previous": "http://domain.com/url?name=tom"
}
可见 ,url()->current()
返回的是不包含查询字符串的当前 URL,url()->full()
返回的是包含查询字符串的当前 URL,url()->previous()
返回的是前一个访问的完整 URL。
我们也可以通过 URL 门面方法来获得这些信息:
use Illuminate\Support\Facades\URL;
echo URL::current();
推荐文章: