От внутри контроллера:
$this->request->controller
$this->request->action
$this->request->param('paramname')
В отличие от аргументов К2 в К3 доступны через Kays, которые вы определили в маршрутах.
Возьмем для примера URL:
Route::set('default', '(<controller>(/<action>(/<id>)))')
->defaults(array('controller' => 'welcome', 'action' => 'index'));
Чтобы получить доступ к "ID" аргумент вы назвали бы
$this->request->param('id')
Вы не можете получить доступ аргументы контроллер/действие из Парам().
Примечание. Вы также можете использовать Request::instance()
, чтобы получить экземпляр запроса глобального (или «основного»).
Для получения дополнительной информации см K3 guide
удивительным, спасибо – n00b
Означает ли это, что для каждого «действия» вам нужно определить набор ключей для каждого параметра? Это звучит как много ненужной работы. Я прочитал, что просто передача аргументов в действия, подобные in ** action (arg1, arg2, ...) **, устарела в K3.1 и будет устранена в 3.2 – techexpert
@techexpert. Каждый аргумент, который вы хотите передать через uri которые будут определены в маршруте. Если вы используете множество параметров, возможно, вы должны использовать строку запроса. – Matt