parametro url - laravel
i nostri utenti accedono al nostro sito con un parametro univoco sull'url. cioèhttp://example.com/hire-agreement?u=unique_param
Ho impostato un percorso per una vista -
Route::get('/hire-agreement', function () {
return view('hire-agreement');
});
Ho 2 domande.
- Devo aggiungere qualcos'altro al percorso per consentire la lettura del parametro nella vista?
- Come leggo questo valore di parametro nella vista? Posso usare
$_GET["name"])?
grazie Craig.
Risposte
non hai bisogno di altro nella sezione url. e per usare o ottenere il parametro url usa l'helper laravel request () .
$value = request('key');
in vista è possibile stampare una chiave come
{{ request('name') }}
esempio completo per te utilizzando l'helper di richiesta
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
});
e quindi in vista puoi usare la variabile come
{{ $name }}
se non vuoi usare una variabile puoi usare direttamente request helper in view
{{ request('name') }}
puoi usare anche la classe Request.
Route::get('/hire-agreement', function (Request $request) {
$name = $request->name;
return view('hire-agreement', compact('name'));
});
tuttavia ti suggerirei di utilizzare un controller. non utilizzare la chiusura nel file di percorso. non puoi metterli in cache quando necessario.
http://example.com/hire-agreement?u=unique_param
in laravel puoi accedere a entrambi poste getpuoi accedervi tramite Requestistanza di classe o request()helper, così puoi farlo
con richiesta di aiuto ()
Route::get('/hire-agreement', function () {
dd(request('u')) // this getting from url ?u=unique_param this u param
return view('hire-agreement');
});
con Class Request o
Route::get('/hire-agreement', function (Request $request) { dd($request->u)) // this getting from url ?u=unique_param this u param
return view('hire-agreement');
});
qui si può
Faresti meglio a passare la richiesta a un controller e gestirla lì, è più facile e più pulito in questo modo. Tuttavia, se vuoi passare direttamente dal percorso alla visualizzazione, è meglio utilizzare il metodo seguente. mettilo nel tuo file di rotta
Route::get('/hire-agreement/{param}', function ($param) { return view('hire-agreement')->with($param);
});
nella vista puoi accedere al parametro in questo modo
<p>{{$param}}</p>
ora se l'utente richiede "/ Hire-agreement / 1234" il tuo $ param nella vista conterrà 1234, Inoltre se vuoi accedere ai parametri di get nell'URL puoi farlo in questo modo
{{Request::input('q')}}