如何在 CakePHP 3 中访问 GET url 的最后一部分
How to access the last part of a GET url in CakePHP 3
我正在构建我的 link 是这样的:
$this->Html->link(
$this->Icon->fa('plus'),
['controller' => 'Questions', 'action' => 'add', $questionnaire->id],
[
'title' => 'Add'
]
);
这会在我的浏览器上创建所需的图标,link:
<host>/questionnaire/questions/add/2
在“另一边”,例如使用
$this->request->getParam('action')
我可以正确地得到 "add"
作为一个值。
但是我怎样才能访问 2
,所以 url 的最后一部分?
我试过
$this->request->getQueryParams()
它 returns 一个空数组。
这取决于您连接的路线。如果有相应的路由具有为该值定义的路由元素,例如
/questionnaire/questions/add/:id
然后您可以通过该元素名称获取值,getParam('id')
。
如果相应的路由没有该值的专用命名元素,而是 *
,这是通过 fallbacks()
连接的后备路由的默认值,那么它将落在pass
参数,getParam('pass')
,这是一个尾随值数组,您的值将位于索引 0
.
另见
我正在构建我的 link 是这样的:
$this->Html->link(
$this->Icon->fa('plus'),
['controller' => 'Questions', 'action' => 'add', $questionnaire->id],
[
'title' => 'Add'
]
);
这会在我的浏览器上创建所需的图标,link:
<host>/questionnaire/questions/add/2
在“另一边”,例如使用
$this->request->getParam('action')
我可以正确地得到 "add"
作为一个值。
但是我怎样才能访问 2
,所以 url 的最后一部分?
我试过
$this->request->getQueryParams()
它 returns 一个空数组。
这取决于您连接的路线。如果有相应的路由具有为该值定义的路由元素,例如
/questionnaire/questions/add/:id
然后您可以通过该元素名称获取值,getParam('id')
。
如果相应的路由没有该值的专用命名元素,而是 *
,这是通过 fallbacks()
连接的后备路由的默认值,那么它将落在pass
参数,getParam('pass')
,这是一个尾随值数组,您的值将位于索引 0
.
另见