Kohana param()不起作用

Bob*_*101 4 kohana kohana-3

我正在使用Kohana 3.有谁知道为什么param('controller')结果为NULL.

路由:

Route::set('default', '(<controller>(/<action>(/<id>)))')
->defaults(array(
    'controller' => 'page',
    'action'     => 'index',
));
Run Code Online (Sandbox Code Playgroud)

网址: http://localhost/application/page/index/1

参数调用:

$param = Request::instance()->param('controller');
echo Kohana::debug($param); //results: NULL
$param = Request::instance()->param('action');
echo Kohana::debug($param); //results: NULL
$param = Request::instance()->param('id');
echo Kohana::debug($param); //results: 1
Run Code Online (Sandbox Code Playgroud)

ant*_*paw 6

在622行查询reqeuest.php:

// These are accessible as public vars and can be overloaded
unset($params['controller'], $params['action'], $params['directory']);

// Params cannot be changed once matched
$this->_params = $params;
Run Code Online (Sandbox Code Playgroud)

这就是第695行无法返回的原因controller:

public function param($key = NULL, $default = NULL)
{
    return $this->_params[$key];
}
Run Code Online (Sandbox Code Playgroud)

这是你如何获得控制器$controller = Request::instance()->controller;$controller = $this->request->controller;如果你在控制器内