- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我是 Zend 的初学者。我在模块路由配置中看到了 may_terminate
。我不明白它是为了什么。根据ZF2 official docs ,
the option “may_terminate” hints to the router that no other
segments will follow it.
我还是不明白没有其他部分会跟随它的含义
。这里的它
是什么?谁能用小例子解释一下?
最佳答案
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
。
这是使用 may_terminate
选项的地方。如果我们在浏览器中浏览到/home
,当路由发生时,路由器不能将home
路由视为可匹配的路由作为 may_terminate = false
。在 ZF2 术语中,路由器不能在该路由处“终止”,而是继续在 child_routes
中搜索匹配项,这将失败并引发 404 错误。
所以通过修改上面例子中的may_terminate
选项的值,我们可以改变可以匹配到的路由。
may_terminate = true
may_terminate = false
关于php - Zend 框架 2 中的 'may_terminate' 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20785532/
我是 Zend 的初学者。我在模块路由配置中看到了 may_terminate 。我不明白它是为了什么。根据ZF2 official docs , the option “may_terminate”
我是一名优秀的程序员,十分优秀!