Laravel 多个可选参数不起作用,URL 中有两个反斜杠

Laravel Multiple Optional Parameter Not Working and Two Back Slashes in URL

这是我的路线:

Route::get('/edit_atten/{id}/{date}/{c_in?}/{c_out?}', 'AttendanceController@editAttendance');

http://127.0.0.1:8000/edit_atten/31/2017-03-20//12:25:30

 public function editAttendance($id, $date, $c_in=null, $c_out=null)
{
    $this_user = Attendance::find($id);

    $this_user->check_in = $c_in;
    $this_user->check_out = $c_out;


    $this_user->save();

    echo "Success";

}

这里,c_in & c_out是可选的parameters.If我只提交c_out 然后 URL 显示如下: http://127.0.0.1:8000/edit_atten/31/2017-03-20//12:25:30 它会产生路由问题。因为 URL 中显示了两个斜杠 (//)!虽然这个 (c_in) 参数是可选的,但为什么显示这个?

有什么解决办法吗?

Route::get('/edit_atten', 'AttendanceController@editAttendance');

http://127.0.0.1:8000/edit_atten?id=31&date2017-03-20&c_out=12:25:30

public function editAttendance(Request $request)
{
  $id = $request->input('id');
  $date = $request->input('date');
  $c_in = $request->input('c_in');
  $c_out = $request->input('c_out');

  $this_user = Attendance::find($id);
  $this_user->check_in = $c_in;
  $this_user->check_out = $c_out;
  $this_user->save();

  echo "Success";
}