Php 我可以在laravel中的控制器中为get和post方法使用相同的名称吗
在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
//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'){..}因为我们使用的是比较运算符而不是标识运算符,所以这就是它工作正常的原因。