控制台中的ZF2主路由器

时间:2015-03-16 17:18:10

标签: zend-framework zend-framework2 zend-framework-routing

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

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

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

由于

1 个答案:

答案 0 :(得分: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'));