2011-03-24 28 views
2

我有Zend的代碼看起來像這樣:變化addActionContext()是XML只

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

我怎樣才能改變這種做法,它只返回XML格式的數據? SOrry,我是Zend編程的新手。

回答

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 
    //... 
} 
0

如果你永遠只能使用XML來實現特定操作,設置標題要返回XML行動中:

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

,然後處理動作的其餘部分,你需要它。如果沒有上下文切換啓用視圖將成爲默認的動作(即actioname.phtml)

你可能還需要禁用佈局:

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

Downvote給出一個正確的答案,甜蜜 – Ashley 2011-03-24 20:38:51