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
变量。我真的不认为我可以详细说明,但如果你有具体的问题,我可以在详细说明的同时发布一个答案。