我的路由定义如下所示(使用this作为参考,以便在代码中获得更好的顺序):
$app->get('/actor/{id}', 'TMDb\Controller\TMDbController::actorAction');
这就是我的控制器的样子:
class TMDbController {
public function actorAction(Request $request, Application $app) { ... }
}
它有效,但我还没有找到让我的动作控制器获得id
值的方法。
答案 0 :(得分:3)
这很简单:
public function actorAction($id, Request $request, Application $app)
Silex(实际上是Symfony2的HttpFoundation)将命名参数从url传递给函数的参数并使用相同的名称。
您还应该查看parameter converters,以便您的控制器获取id引用的对象(或数组),而不是普通ID。