我使用Zend框架1.11.2。我想创建可以在电子邮件文本中使用的控制器操作的url。
在控制器中,我使用zend_view_helper_serverurl和zend_view_helper_url这样做:
$serverUrlHelper = new Zend_View_Helper_ServerUrl();
$unsubscribeUrl = $serverUrlHelper->serverUrl(
$this->getHelper('url')->url(
array(
'module' => $this->getFrontController()->getDefaultModule(),
'controller' => 'newsletter',
'action' => 'unsubscribe',
'email' => $email
),
'default', // the route
true));
现在,我不想在控制器中这样做,而是在命令行中这样做。我已经按照这里描述的步骤启动了一个zend控制器/操作。但是
Application_Router_Cli
没有assemble
函数的实现。我从未对Zend Routing做过深入的研究。有人能给我一个提示如何实现它吗? 最佳答案
不是从应用程序路由器cli中的zend_controller_router_抽象进行子分类(如本教程中所述),而是重写zend_controller_router_的子类。这将为您提供assemble()函数,并允许您使用url助手,就像您通常在web上下文中使用它一样。