Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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 我可以在laravel中的控制器中为get和post方法使用相同的名称吗_Php_Laravel - Fatal编程技术网

Php 我可以在laravel中的控制器中为get和post方法使用相同的名称吗

Php 我可以在laravel中的控制器中为get和post方法使用相同的名称吗,php,laravel,Php,Laravel,在laravel的控制器中,get和post方法可以使用相同的名称吗 //in route Route::get('form','OrderController@formOrder'); Route::post('form','OrderController@formOrder'); // in controller [get] public function formOrder() { //do something } [post] public function formOrde

在laravel的控制器中,get和post方法可以使用相同的名称吗

//in route 
Route::get('form','OrderController@formOrder');
Route::post('form','OrderController@formOrder');

// in controller
[get]
public function formOrder()
{
   //do something
}

[post]
public function formOrder()
{
   //do something else
}
类似的东西..

公共函数formOrder(Request$Request)
{
如果($request->isMethod('post')){
//发布数据
}
如果($request->isMethod('get')){
//获取数据
}
}
公共函数formOrder(请求$Request)
{
$method=$request->method();
如果($method=='post'){
//发布数据
}
如果($method=='get'){
//获取数据
}
}
你也可以走单条路线

Route::match(['get','post'],'form','OrderController@formOrder');

这是PHP中方法重载的一个很好的答案。方法名称用大写字母表示,因此正确的方法是:$method=$request->method();if($method=='POST'){..}if($method=='GET'){..}因为我们使用的是比较运算符而不是标识运算符,所以这就是它工作正常的原因。