2015-09-19 12 views
26

Wie ich alleget/ put/ post Variablen wie in dünnen 2 für Slim 3 bekommen?Slim 3 - Wie bekommt man alle Get/Put/Post-Variablen?

Schlank 2,

$allGetVars = $app->request->get(); 
$allPutVars = $app->request->put(); 
$allPostVars = $app->request->post(); 

Wie kann ich tun, dass in dünnen 3?

Und zum Beispiel http://example.com/books/1?title=hello&content=world

Wie kann ich die params in title und content in Schlanke 3 jetzt bekommen?

Schlank 2,

$title = $app->request->get('title'); 
$content = $app->request->get('content'); 

Wie kann ich tun, dass in dünnen 3?

Antwort

53

Erhalten alleget/put/post Parameter:

//GET 
$allGetVars = $request->getQueryParams(); 
foreach($allGetVars as $key => $param){ 
    //GET parameters list 
} 

//POST or PUT 
$allPostPutVars = $request->getParsedBody(); 
foreach($allPostPutVars as $key => $param){ 
    //POST or PUT parameters list 
} 

Einzel Parameter Wert:

//Single GET parameter 
$getParam = $allGetVars['title']; 

//Single POST/PUT parameter 
$postParam = $allPostPutVars['postParam']; 
+1

Vielen Dank für die Antwort! – laukok

+1

Danke Kumpel! Es ist schwer, nach diesem zu suchen – FewFlyBy

+0

Hallo. Es funktioniert nicht für mich. Das einzige was "funktioniert" ist "$ request-> getHeaders();" und es fügt _HTTP__ als Präfix hinzu. Zum Beispiel, wenn ich _length_ als Post-Parameter benutze, bekomme ich mit 'getHeaders()' _HTTP_LENGTH_. Ich verstehe nicht warum. Und 'getParsedBody()' gibt grundsätzlich _NULL_ zurück. Vielen Dank! PS: Das seltsamste ist: Wenn ich '$ request-> HasHeader ('Länge')', ich den Wert meiner Parameter erhalten. – TDK

3

Request Uri: getQueryParams()

Request Body: getBody()/getParsedBody()

Es ist nicht genau das, was Sie suchen, aber es kommt ziemlich nahe.

+0

Vielen Dank für die Antwort! – laukok

4

alle Anfrage params zu erhalten:

$request->getParams()