PHP: экспорт массива в проблему XML

У меня есть массив, который мне нужно преобразовать в XML с SimpleXML. Метод ниже почти делает работу, но естьОдна проблема с этим. Оно может'создать такую структуру:

    $xmlFields = array(  
        'rootElt' => array(
            'field1' => '',
            'field2' => '',                
            'field3' => array(                  
                'field4'  => array(
                    'income' => array(
                        'owner' => '',                            
                        'description' => '', 
                    ),
                    'income' => array(
                        'owner' => '',                            
                        'description' => '', 
                    ),
                ),
            )
        )
    );

Пишет только последнеедоход» разделаField4' но мне нужен вывод, как:


    
        ....            
        ....
    
    
        ....            
        ....
    

Может ли кто-нибудь помочь мне исправить эту функцию:

/**     
 * @param array $dataArr
 * @param SimpleXMLElement $xmlObj 
 */
private function array2xml( $dataArr, $xmlObj ) {
    foreach ( $dataArr as $key => $value ) {          
        if ( is_array($value) ) {                        
            if ( !is_numeric($key) ) {                    
                $subnode = $xmlObj->addChild( $key );                    
                self::array2xml( $value, $subnode );                    
            } else {                                        
                self::array2xml( $value, $xmlObj );      
            }
        } else {
            $xmlObj->addChild( $key, $value );                       
        }
    }
}

Ответы на вопрос(1)

Ваш ответ на вопрос