Php 接受可变数量的参数进入Laravel路由?

Php 接受可变数量的参数进入Laravel路由?,php,laravel,laravel-4,Php,Laravel,Laravel 4,假设我有以下路线: Route::post('api/{call}', array('as' => 'apiCaller', 'uses' => 'ApiController@apiCaller')); 我希望此路由能够调用call参数中指定的变量API。在调用参数之后,我希望请求者能够以key=value的典型格式提交一篇文章,并根据请求的API使用不同数量的参数 我该怎么做呢?我应该检查随请求发送的$\u POST数组,还是Laravel有特殊要求?只需使用输入类,正如@Sam

假设我有以下路线:

Route::post('api/{call}', array('as' => 'apiCaller', 'uses' => 'ApiController@apiCaller'));
我希望此路由能够调用
call
参数中指定的变量API。在
调用
参数之后,我希望请求者能够以
key=value
的典型格式提交一篇文章,并根据请求的API使用不同数量的参数


我该怎么做呢?我应该检查随请求发送的$\u POST数组,还是Laravel有特殊要求?

只需使用输入类,正如@Sam告诉您的:

class ApiController
{

  public function apiCaller($call)
  {
     $inputs = Input::all();
     // now $inputs is an array with all the key=> value pair sent, or an empty
     // array if none has been passed
  }
}

这些和更多内容都写在这里

您可以使用
Input
类从
$\u POST
$\u get
获取任何用户数据,例如:

Input::get('keyname'); // get only one item by keyname
Input::all(); // returns all user submitted data from all input sources
Input::only(array('key1', 'key2')); // Only these two mentioned
Input::except('_token'); // get all but _token
http://example.com?key1=value1&key2=valye2 // So on...
如果希望用户使用url提交数据(无限制参数),则必须使用
查询字符串
,例如:

Input::get('keyname'); // get only one item by keyname
Input::all(); // returns all user submitted data from all input sources
Input::only(array('key1', 'key2')); // Only these two mentioned
Input::except('_token'); // get all but _token
http://example.com?key1=value1&key2=valye2 // So on...

为此,您不必修改
路线
,只需在
url
中添加参数即可。要提交到
$\u POST
,不需要通过
url
传递参数,但要使用什么方法(POST/GET)来检索用户提交的数据,可以使用相同的
输入方法。

就可以了。您可以通过类访问
$\u POST
$\u GET
变量。我真的不认为我可以详细说明,但如果你有具体的问题,我可以在详细说明的同时发布一个答案。