Php 如何优雅地处理控制器中缺少的参数?

Php 如何优雅地处理控制器中缺少的参数?,php,laravel,laravel-4,Php,Laravel,Laravel 4,missingMethodmethod/hook对Laravel控制器执行catchall的方式非常出色,但对于缺少方法参数的情况,这是一种同等的方法吗 我想要同等的: public function missingMethod($parameters) { echo "Missing!"; } // but for arguments public function missingArguments($parameters) { echo "Missing arguments

missingMethod
method/hook对Laravel控制器执行catchall的方式非常出色,但对于缺少方法参数的情况,这是一种同等的方法吗

我想要同等的:

public function missingMethod($parameters) {
    echo "Missing!";
}

// but for arguments
public function missingArguments($parameters) {
    echo "Missing arguments!";
}
相反,我收到了类似于:


您所描述的实际上是一条路线——伪装成“缺少的方法/参数”

i、 e

如果您有路线
/example/1

您的控制器功能是

public function show($id)
{
      echo $id;
}
因此,控制器功能的“缺失参数”将是

public function missing()
{
    echo 'you need an id';
}
你的网址是

/example
你的路线是

Route::get('/example/{id}', ['as' => 'example.show', 'uses' => 'ExampleController@show']);
Route::get('/example', ['as' => 'example.missing', 'uses' => 'ExampleController@missing']);

使用?在将使其成为可选的路由“/example/{id?}”中,方法中的提供参数默认值,即($id=null),然后只检查null


希望对您有所帮助

Laravel中没有此类功能。好的,没有内置功能。。但是有没有一种方法可以优雅地处理它呢?