将addActionContext()更改为仅XML

时间:2011-03-24 09:32:55

标签: php zend-framework zend-rest

我有Zend代码,看起来像这样:

$contextSwitch->addActionContext('get', array('xml','json'))->initContext();

如何更改此设置以便仅返回XML格式的数据? SOrry,我是Zend编程的新手。!

2 个答案:

答案 0 :(得分:1)

阅读manual

public function init()
{
    $this->_helper->contextSwitch()
        ->addActionContext('get', array('xml','json'))
        ->initContext();
}

public function getAction()
{
    this->_helper->contextSwitch()->initContext('xml'); //will always use xml if action has xml context
    //...
}

答案 1 :(得分:0)

如果您只使用xml进行特定操作,请在要返回xml的操作中设置标题:

$this->getResponse()->setHeader('Content-type', 'text/xml');

然后根据需要处理其余操作。如果未启用上下文切换,则视图将是操作的默认设置(即.actioname.phtml)

您可能还想要禁用布局:

$this->_helper->layout->disableLayout();