Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将URL参数传递给控制器';s动作_Php_Laravel_Laravel 4 - Fatal编程技术网

Php 如何将URL参数传递给控制器';s动作

Php 如何将URL参数传递给控制器';s动作,php,laravel,laravel-4,Php,Laravel,Laravel 4,我有以下路线: Route::get('reviewers/{id}', 'ReviewerController@single'); 并在我的控制器上执行以下操作: public function single(){ $id = Input::get('id'); return View::make('reviewer.single') ->with('id', $id);} public function single($id){ return View::make('rev

我有以下路线:

Route::get('reviewers/{id}', 'ReviewerController@single');
并在我的控制器上执行以下操作:

public function single(){
$id = Input::get('id');
return View::make('reviewer.single')
->with('id', $id);}
public function single($id){
    return View::make('reviewer.single')
      ->with('id', $id);
}
在我的单一视图中,我转储了$id的值,它为NULL。虽然我在url中提供了一个id(例如,reviewers/1),为什么$id为空

改用这个:

public function single($id)
{
    $id = (int)$id; // if you haven't already ensured it's integer with Route::pattern() method
    return View::make('reviewer.single')->with('id', $id);
}

要使用路由通配符并传递数据,控制器方法必须具有必要的参数。在这种情况下不使用输入外观。

当您生成url时,您会像reviewers/2一样生成它。Laravel有几种方法可以生成指向路由的URL,例如指向命名路由或:

//route to controller action
$url = action('ReviewerController@single', $id);
在控制器中:

public function single(){
$id = Input::get('id');
return View::make('reviewer.single')
->with('id', $id);}
public function single($id){
    return View::make('reviewer.single')
      ->with('id', $id);
}