在zf2控制器中创建链接URL

时间:2013-11-23 11:33:24

标签: zend-framework2

我是zend-framework 2的首发。 如果我需要在view.phtml中创建一个链接,请使用:

$this->url('router',array())

现在我需要在控制器中创建一个链接并保存到数据库。 有什么想法吗?

3 个答案:

答案 0 :(得分:15)

试试这个:

public function someAction()
{
    //codes

    //use url plugin in controller
    $link = $this->url()->fromRoute('router', array());
    //or use ViewHelperManager in controller or other place that you have ServiceManager
    $link = $this->getServiceLocator()->get('ViewHelperManager')->get('url')->__invoke('router',array());

    //codes
}

答案 1 :(得分:3)

调用viewhelper:

public function algoAction()
{
    $url = $this->getServiceLocator()
            ->get('viewhelpermanager')
            ->get('url');
    $link = $url('router',array());
}

zf v2.4

$this->url()->fromRoute('home',[],['force_canonical' => true]);

[' force_canonical' =>是] *是可选的

答案 2 :(得分:-1)

使用url()控制器插件:

public function fooAction(){

    //other code

    $this->url('routename');

    //other stuff
}