1

如何url()在控制台内使用控制器助手?

我必须使用控制台的操作生成一些 url,但是如果我调用$this->controller->url()->fromRoute(...);,我只能询问路由器中定义的console路由。

换句话说,我需要能够调用应用程序主路由器的所有路由。

谢谢

4

1 回答 1

1

我不确定这是一个好的决定,但您可以手动更改路由器:

// ConsoleController.php

// Change router to HTTP    
$this->getEvent()->setRouter($this->getServiceLocator()->get('HttpRouter'));

// Get any HTTP route
var_dump($this->url()->fromRoute('your_http_route'));

// Change it back, if you want
$this->getEvent()->setRouter($this->getServiceLocator()->get('Router'));
于 2015-03-16T22:19:50.273 回答