Routing 如何检查route在Symfony2中是否有参数?

Routing 如何检查route在Symfony2中是否有参数?,routing,symfony-2.3,Routing,Symfony 2.3,我使用的是Symfony2.3,有一个名为my_route的路由,路径为/my/test/path/{param1} 如果我尝试生成此路由的URL,我会这样写: /** @var Symfony\Bundle\FrameworkBundle\Routing\Router **/ $router = ...; $router->generate('my_route', array('param1' => 'value1')); // /my/test/path/value1 但是,如

我使用的是Symfony2.3,有一个名为
my_route
的路由,路径为
/my/test/path/{param1}

如果我尝试生成此路由的URL,我会这样写:

/** @var Symfony\Bundle\FrameworkBundle\Routing\Router **/
$router = ...;
$router->generate('my_route', array('param1' => 'value1')); // /my/test/path/value1
但是,如果我在
generate
方法中使用一个不存在的参数,URL就会变成
/my/test/path/value1?param2=value2

$router->generate('my_route', array('param1' => 'value1', 'param2' => 'value2')); // /my/test/path/value1?param2=value2

如何检查路由中是否存在
param2

查看类“Symfony\Component\Routing\route”

$route = $this->get('router')->getRouteCollection()->get('my_route');
$pathVariables = $route->compile()->getPathVariables()