Php 在Slim上获取请求参数

Php 在Slim上获取请求参数,php,slim,Php,Slim,我试图动态获取请求参数名称和值,但数组总是空的。这是获取路径: $app->get('/get/profile/:id_user', function ($id_user) use ($app) { print_r($app->request()->params()); }); 这就是我在浏览器中对它的称呼: http://localhost/get/profile/9492 这应该返回一个id为id\u user=>9492的数组,但它是空的 有什么想法吗?注意:

我试图动态获取请求参数名称和值,但数组总是空的。这是获取路径:

$app->get('/get/profile/:id_user', function ($id_user) use ($app) {
    print_r($app->request()->params());
});
这就是我在浏览器中对它的称呼:

http://localhost/get/profile/9492
这应该返回一个id为
id\u user=>9492的数组,但它是空的


有什么想法吗?

注意:在尝试此代码之前,请阅读更新说明。更新说明是我在这个回答中的第一个评论

无法对其进行测试,但请尝试以下操作:

$app->get('/get/profile/:id_user', function ($id_user) use ($app) {
    $req = $app->request();
    print_r($req->params());
});
参考文件:


更新:好的在执行以下操作后,
params()
方法需要一个参数。如果在没有参数的情况下调用,将引发通知。检查源代码后发现,此函数在没有参数的情况下调用时返回null。请参见Http/Request.php
第199行。此外,出于某些原因,curry似乎也无法检索参数,因此您必须使用具有预期值的函数参数
$id\u user

您可以使用以下内容:

$app->get("/test.:format/:name",function() use ($app){
  $router = $app->router();
  print_r($router->getCurrentRoute()->getParams());
});

这也是一个配置问题

试一试


也没有结果:(…
Array()
是唯一的响应方法需要一个参数。如果在没有参数的情况下调用,则会发出通知。检查源代码发现,在没有参数的情况下调用此函数会返回null。请参阅
Http/Request.php第199行
。此外,出于某种原因,curry在检索参数时似乎也不起作用,因此您必须使用函数参数
$id\u user
具有预期值。因此,无法动态获取所有请求的参数。文档在这方面写得有点模糊,但感谢您的解释!我将投票支持您的答案作为解决方案,但如果您在帖子中为其他人添加通知,那就太好了呵呵。@andufo,当然。我添加了通知并在更新说明中添加了我的评论。谢谢你指出这一点。@andufo,请注意,你可以使用$app->request->get()来检索它们。请看,谢谢,这正是我在过去半个小时所寻找的:)
try_files $uri $uri/ /index.php?$query_string;