2011-02-07 7 views
0

Zend RestControllerを使用して学生データ(データベースから)をxml形式で出力します。コントローラからの行データをビュー要素(列単位)に割り当てること。このようZend RestController xmlレスポンス>複数の行

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

しかし、複数行のデータを表示する必要がある場合は何?

私は唯一の1行データを与え、私のindex.xml.phtmlに次のコードを、持っている:どのようにXML(複数行)として配列して出力して、結果セットからiループすることができます

<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(); 
?> 

を?

+1

なぜ、forループからappendChildに$ name配列を使用しないのですか? –

+0

私は別のxmlルートツリー内のデータベースの各行から名前を得たいので、1つのxmlタグの下にあるすべての名前ではなく、1つのxmlルートタグ(Student)の下の1行の説明フィールド、別のxmlルートタグの下にある説明などがあり、最後にこれらの個々の生徒タグはすべて「生徒」ルートタグの下になければなりません。 –

答えて

0

私は、foreachを使用して結果セットをループして解決策を得ました。

私の結果セットの各行について、列データを子要素(例: "Name")に追加し、この子要素をルート要素(Student)に追加しました。

最後に、スーパールート要素(Students)にはルート要素が子要素として含まれています。つまり、「学生」にはすべての「学生」データが含まれています。

関連する問題