@knowledge

Как передать переменное количество переменных при использовании роутинга от symfony?

Решил в проекте использовать роутинг от symfony, но возник целый ряд проблем, которые приходится решать при его подключении. Собственно остался только один момент.
Я получаю список параметров урла через функцию
$parameters = $matcher->match($request->getPathInfo());

вычищаю лишнее из параметров которые передаю в экшн
unset($parameters['_controller'], $parameters['_route']);

далее получаю контроллер и экшн
$path = explode("::", $request->attributes->get('_controller'));
list($controller, $action) = $path;

и запускаю их
$controller = new $controller;
$router = $controller->$action($parameters);

но $parameters у меня массив, а роут может быть например таким /hello/{name}/age/{age}
и получать в экшене я его хочу так helloAction($name, $age)
то есть переменные. я не хочу в экшене парсить получаемый массив $parameters
как мне это сделать? функция extract создает переменные из массива, но как мне их передать в экшн, ведь кол-во переменных может меняться
  • Вопрос задан
  • 63 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы