tham số url - laravel
người dùng của chúng tôi truy cập trang web của chúng tôi với một tham số duy nhất trên url. I Ehttp://example.com/hire-agreement?u=unique_param
Tôi đã thiết lập một tuyến đường đến một khung cảnh -
Route::get('/hire-agreement', function () {
return view('hire-agreement');
});
Tôi có 2 câu hỏi.
- Tôi có cần thêm bất cứ thứ gì khác vào Tuyến để cho phép đọc tham số trong dạng xem không?
- Làm cách nào để đọc giá trị tham số này trong Chế độ xem? Tôi có thể sử dụng
$_GET["name"])?
cảm ơn Craig.
Trả lời
bạn không cần thêm bất cứ điều gì trong phần url. và để sử dụng hoặc lấy tham số url, hãy sử dụng trình trợ giúp laravel request () .
$value = request('key');
trong quan điểm, bạn có thể in một chìa khóa như
{{ request('name') }}
đầy đủ ví dụ cho bạn bằng cách sử dụng trình trợ giúp yêu cầu
Route::get('/hire-agreement', function () {
$name = request('name'); //put the key in a variable
return view('hire-agreement', compact('name')); //send the variable to the view
});
và sau đó, bạn có thể sử dụng biến dưới dạng
{{ $name }}
nếu bạn không muốn sử dụng một biến, bạn có thể sử dụng trình trợ giúp yêu cầu trực tiếp trong chế độ xem
{{ request('name') }}
bạn cũng có thể sử dụng lớp Yêu cầu.
Route::get('/hire-agreement', function (Request $request) {
$name = $request->name;
return view('hire-agreement', compact('name'));
});
tuy nhiên tôi sẽ đề nghị bạn sử dụng một bộ điều khiển. không sử dụng bao đóng trong tệp tuyến đường. u không thể lưu chúng vào bộ nhớ cache khi cần thiết.
http://example.com/hire-agreement?u=unique_param
trong laravel, bạn có thể truy cập cả hai postvà getcó thể được truy cập bằng Requestphiên bản lớp hoặc trình request()trợ giúp để bạn có thể làm
với yêu cầu người trợ giúp ()
Route::get('/hire-agreement', function () {
dd(request('u')) // this getting from url ?u=unique_param this u param
return view('hire-agreement');
});
với Yêu cầu Lớp học hoặc
Route::get('/hire-agreement', function (Request $request) { dd($request->u)) // this getting from url ?u=unique_param this u param
return view('hire-agreement');
});
ở đây bạn có thể
Tốt hơn bạn nên chuyển yêu cầu đến một bộ điều khiển và xử lý nó ở đó, theo cách đó sẽ dễ dàng và gọn gàng hơn. Còn nếu bạn muốn đi thẳng từ tuyến đường để xem, tốt hơn bạn nên sử dụng phương pháp dưới đây. đưa cái này vào tệp tuyến đường của bạn
Route::get('/hire-agreement/{param}', function ($param) { return view('hire-agreement')->with($param);
});
trong chế độ xem, bạn có thể truy cập thông số như thế này
<p>{{$param}}</p>
bây giờ nếu người dùng yêu cầu "/ thuê-thỏa thuận / 1234" $ param của bạn trong chế độ xem sẽ chứa 1234, Ngoài ra, nếu bạn muốn truy cập nhận thông số trong url, bạn có thể làm như thế này
{{Request::input('q')}}