该选项将向路由器指示“此”路由能够仅在其值上匹配;即使它定义了 .may_terminate
route
child_routes
请考虑以下示例路由配置。
'router' => [
'routes' => [
'home' => [
'type' => 'literal',
'options' => [
'route' => '/home',
],
'may_terminate' => false,
'child_routes' => [
'foo' => [
'type' => 'literal',
'options' => [
'route' => '/foo',
],
],
],
],
],
],
上述配置中存在一些歧义,这只发生在定义子级的路由中。我们是要允许用户在两条路线上匹配还是只匹配一条路线?
我们可以只允许在零件上进行匹配;这意味着我们有两条路线,或者我们可能只想允许。/home
/home
/home/foo
/home/foo
这是使用该选项的位置。如果我们在浏览器中浏览到,则当路由发生时,路由器不能将路由视为可匹配的路由。在 ZF2 术语中,路由器不能在此路由上“终止”,并继续搜索 到 的匹配项,这将失败并引发 404 错误。may_terminate
/home
home
may_terminate = false
child_routes
因此,通过修改上面示例中选项的值,我们可以更改可以匹配的路由。may_terminate
may_terminate = true
may_terminate = false