2016-05-26 1 views
1

J'ai 2 itinéraires comme ci-dessous,Différencier entre GET et méthode POST Laravel Controller

Route::get('/','[email protected]'); 
Route::post('/','[email protected]'); 

ou

Route::any('/','[email protected]'); 

Lorsque la demande get est appelé je vais calculer les dates et la demande de poste de poule est appelé i obtiendra des dates à partir des entrées de formulaire.

lorsque la méthode de poste est appelé dans mon controleur

$date1 = $request->get ('date1'); 
$date2 = $request->get ('date2'); 

quand get est appelé

$date1 = will calculate using date function 
$date2 = will calculate using date function 

Comment différencier les deux méthodes publierez, si obtenir je devrais un ensemble de choses et après une autre ensemble de choses

Répondre

1
<?php 

namespace App\Http\Controllers; 

use Illuminate\Http\Request; 
use Illuminate\Routing\Controller; 

class SmeController extends Controller 
{ 
    /** 
    * Do somthing 
    * @param Request $request 
    */ 
    public function update(Request $request) 
    { 
     if ($request->isMethod('post')) { 
    // 
     } 
     if ($request->isMethod('get')) { 
    // 
     } 
    } 
} 

vous pouvez également utiliser $method = $request->method();

4

Vous pouvez simplement faire en utilisant le code ci-dessous

public function someMethod(Request $request) 
{ 
     $method = $request->method(); 

     // to check if its a post method 
     if ($request->isMethod('post')) { 
      // 
     } 

     // to check if its a get method 
     if ($request->isMethod('get')) { 
      // 
     } 
} 

La méthode méthode renvoie le verbe HTTP pour la demande. Vous pouvez également utiliser la méthode isMethod pour vérifier que le verbe HTTP correspond à une chaîne donnée:

+1

a obtenu une réponse similaire de @ B.Kevin, at-il répondu rapidement. Donc, je l'ai accepté comme une réponse – Mann

+0

@Mann pas de problèmes :) –

0
$request->query();//return only GET param 
$request->request->all()// POST param 
$request->input();//all