Is there a Laravel way to get the current path of a Request with its query parameters?
For instance, for the URL:
http://www.example.com/one/two?key=value
Request::getPathInfo()
would return /one/two
.
Request::url()
would return http://www.example.com/one/two
.
The desired output is /one/two?key=value
.
Try to use the following:
\Request::getRequestUri()
Request class doesn't offer a method that would return exactly what you need. But you can easily get it by concatenating results of 2 other methods:
echo (Request::getPathInfo() . (Request::getQueryString() ? ('?' . Request::getQueryString()) : '');
Laravel 4.5
Just use
Request::fullUrl()
It will return the full url
You can extract the Querystring with str_replace
str_replace(Request::url(), '', Request::fullUrl())
Or you can get a array of all the queries with
Request::query()
Laravel >5.1
Just use
$request->fullUrl()
It will return the full url
You can extract the Querystring with str_replace
str_replace($request->url(), '',$request->fullUrl())
Or you can get a array of all the queries with
$request->query()
Get the current URL including the query string.
echo url()->full();
$request->fullUrl()
will also work if you are injecting Illumitate\Http\Request
.
Get the flag parameter from the URL string http://cube.wisercapital.com/hf/create?flag=1
public function create(Request $request)
{
$flag = $request->input('flag');
return view('hf.create', compact('page_title', 'page_description', 'flag'));
}
Similar to Yada's answer: $request->url() will also work if you are injecting Illuminate\Http\Request
Edit: The difference between fullUrl and url is the fullUrl includes your query parameters
public functin func_name(Request $request){$reqOutput = $request->getRequestUri();}
来源:https://stackoverflow.com/questions/31555494/laravel-request-getting-current-path-with-query-string