2011-02-07 26 views
0

Iam使用Zend RestController以xml格式輸出學生數據(來自數據庫)。 Iam將來自控制器的行數據分配給視圖元素(逐列)。Zend RestController xml response>多行

像這樣:

$this->view->name = $name; 
$this->view->desc = $desc; 

但是,如果具有多列顯示的數據是什麼?

我在我的index.xml.phtml,其中只給出了1行的數據以下代碼:

<pre> 
<?php 
$doc = new DOMDocument(); 
$doc->formatOutput = true; 
$root_element = $doc->createElement("Students"); 
$doc->appendChild($root_element); 

$nameElement = $doc->createElement("student"); 
$nameElement->appendChild($doc->createTextNode($this->name)); 
$root_element->appendChild($nameElement); 

print $doc->saveXML(); 
?> 

如何i循環通過結果集陣列並將其輸出作爲XML(多行)?

+1

爲什麼你不使用$ name數組作爲for循環到appendChild。 – 2011-02-07 10:52:03

回答

0

很好,我通過使用foreach循環結果集得到了解決方案。

對於結果集的每一行,我將列數據附加到子元素(例如:「Name」),然後將此子元素附加到根元素(Student)。

{ // using foreach loop 
$nameElement = $doc->createElement("Name"); 
$nameElement->appendChild($doc->createTextNode($this->name)); // add Name to "Student" 
$root_element->appendChild($nameElement); 
} 

因此,最後超級根元素(學生)包含作爲孩子的根元素。我的意思是,「學生」包含所有「學生」數據。