Объект SimpleXMLElement

Когда я делаю print_r($nodes); Я получил:

 Array ( [0] => SimpleXMLElement Object ( [kategoria_6] => 1 [opis_6] => 1 [img] => slides/slide0.jpg ) [1] => SimpleXMLElement Object ( [kategoria_6] => 2 [opis_6] => 2 [img] => slides/slide1.jpg ) [2] => SimpleXMLElement Object ( [kategoria_6] => 3 [opis_6] => 3 [img] => slides/slide4.jpg ) [3] => SimpleXMLElement Object ( [kategoria_6] => 4 [opis_6] => 4 [img] => slides/slide3.jpg ) [4] => SimpleXMLElement Object ( [kategoria_6] => 7 [opis_6] => 7 [img] => slides/slide2.jpg ) ) 

И теперь в этом случае я не могу этого сделать:

 $nodes->asXML("c:\\aaa.xml"); 

потому что это массив, который я мог бы сделать f.ex:

 $nodes[1]->asXML("c:\\aaa.xml"); 

но я получу только один элемент. Мне нужно получить весь этот массив или лучше изменить его на это:

 SimpleXMLElement Object ( [item] => Array ( [0] => SimpleXMLElement Object ( [kategoria_6] => 1 [opis_6] => 1 [img] => slides/slide0.jpg ) [1] => SimpleXMLElement Object ( [kategoria_6] => 2 [opis_6] => 2 [img] => slides/slide1.jpg ) [2] => SimpleXMLElement Object ( [kategoria_6] => 3 [opis_6] => 3 [img] => slides/slide4.jpg ) [3] => SimpleXMLElement Object ( [kategoria_6] => 4 [opis_6] => 4 [img] => slides/slide3.jpg ) [4] => SimpleXMLElement Object ( [kategoria_6] => 7 [opis_6] => 7 [img] => slides/slide2.jpg ) ) ) 

Как это решить?

К сожалению, SimpleXML сам по себе не позволяет вам делать то, что вы хотите сделать. К счастью, DOM делает ( FIXED ):

 // Create a new DOMDocument $dom = new DOMDocument('1.0', 'utf-8'); // Create the DocumentElement $documentElement = $dom->appendChild($dom->createElement('objects')); // Loop the SimpleXML elements and import them into DOM foreach ($val as $element) { $documentElement->appendChild($dom->importNode(dom_import_simplexml($element), TRUE)); } // Save to file $dom->save("c:\\aaa.xml");