簡體   English   中英

Laravel 在控制器中獲取 url 的參數

[英]Laravel get the parameter of url in controller

我正在嘗試將參數的值放入一個變量中,這是我到目前為止所擁有的:

public function getname(Request $request)
{
    echo ($request->input('id'));

    return view('test.test1');
}

我的路線是:

Route::get('/test/{id}','Controller@getname');

我得到的輸出是NULL我怎樣才能得到 url 參數的值?

我的網址是:

localhost/test/test1/4

所以我想輸出 4。

我嘗試執行 thr 請求方法,但沒有奏效,因此它與將頁面 URL 參數傳遞給 Laravel 5.2 中的控制器不同

網頁/routes.php

Route::get('/test/{id}','Controller@getname');

控制器文件

public function getname(Request $request,$id)
{

    echo $id; # will output 4
    $param = $id;
    return view('test.test1')->with('param',$param);
}

請使用 url 中的 id 作為控制器函數參數

public function something(Request $request,$id){
    return $id;
} 

您應該向 getName 函數添加額外的參數。

# Stick to the convention of camelcase functions, not getname but getName
public function getName(Request $request, $param, $id)
{
    # This only works when you pass an id field while performing a POST request.
    # echo ($request->input('id'));
    echo $param; # will output 'test1'
    echo $id; # will output 4
    return view('test.test1', compact('$param','id'));
}

非常簡單,您可以在控制器中遵循此代碼

$url = url()->current();
$url = str_replace("http://", "", $url);
dd($url);

輸出:本地主機/測試/測試1/4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM