鍍金池/ 問答/PHP/ laravel $request->input和 $request-&g

laravel $request->input和 $request->query 差別?

1.看了介紹還是看不懂
使用 input 方法可以從整個(gè)請(qǐng)求中獲取輸入數(shù)據(jù)(包括查詢字符串),而 query 方法可以只從查詢字符串中獲取輸入數(shù)據(jù):

2.
Router寫
Route::get('post/{id}', 'HometestController@show');

HometestController.php內(nèi)寫

public function show(Request $request)
{
    // $post = Post::find($id); 舊方法不能使用?
    // $post = $request->all();
    $post = $request->input('id');
    return View('show')
        ->with('title', 'My Blog - '. $post->title)
        ->with('post', $post);
}

出現(xiàn)的錯(cuò)誤是

Trying to get property of non-object

請(qǐng)問這兩個(gè)有什么差別?

寫法是哪里錯(cuò)誤?

回答
編輯回答
墻頭草

首先這種路由參數(shù)的正確姿勢(shì)應(yīng)該是:

public function show(Request $request,$id)
{
    //your code 
}

或者:

\request()->route('id');

其次:queryinput 的子集。

使用 input 方法可以從整個(gè)請(qǐng)求中獲取輸入數(shù)據(jù)(包括查詢字符串),而 query 方法可以只從查詢字符串中獲取

2017年1月31日 16:29