2009-07-09 15 views
1

は、私は次のコードで正常にXMLドキュメントを構築しています結果セットPSQLからXMLを構築:再帰的に(使用してPHP)

public function build($result) { 

    $root = $this->append(new xmlElement('data')); 
    $root->append(new xmlElement('collection')); 

    while($row = pg_fetch_assoc($result)){ 

     foreach($row as $fieldname => $fieldvalue){ 
      $second = $root->append(new xmlElement($fieldname)); 
      $second->write($fieldvalue); 
     // $seconds_child = $second->append(new xmlElement('second child child')); 
     // $seconds_child->write("second's child content"); 
     } 
    } 
} 

私の質問があり、再帰的にこれを行うための最善の方法は何ですか?

答えて

1
$current = $root; 
foreach($row as $fieldname => $fieldvalue) { 
    $next = $current->append(new xmlElement($fieldname)); 
    $current->write($fieldvalue); 
    $current = $next; 
} 

私はオブジェクト参照の再割り当てがこれを混乱させると感じています。それが動作しない場合は、私に知らせてください。