How I can get all get/ put/ post
variables like in Slim 2 for Slim 3?
Slim 2,
$allGetVars = $app->request->get();
$allPutVars = $app->request->put();
$allPostVars = $app->request->post();
How can I do that in Slim 3?
And, for example, http://example.com/books/1?title=hello&content=world
How can I get the params in title
and content
in Slim 3 now?
Slim 2,
$title = $app->request->get('title');
$content = $app->request->get('content');
How can I do that in Slim 3?
Get all get/put/post
parameters:
//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
}
Single parameters value:
//Single GET parameter
$getParam = $allGetVars['title'];
//Single POST/PUT parameter
$postParam = $allPostPutVars['postParam'];
To Get all request params:
$request->getParams()
Request Uri: getQueryParams()
Request Body: getBody()
/getParsedBody()
It's not exactly what you are looking for but it comes pretty close.
You can use the map()
method to combine get, post & put into a single route.
$app->map(['GET', 'POST', 'PUT'], function(Request $request, Response $response, array $args)) { }
The first argument is an array of the HTTP methods that you want to match. The second parameter is the function that handles the request; pass a request, response and an array of arguments.
来源:https://stackoverflow.com/questions/32668186/slim-3-how-to-get-all-get-put-post-variables