<?xml version="1.0" encoding="iso-8859-1"?> <zmiany> <zmiana to="kategoria" typ="0" sub="1"> <pola> <tx n="nazwa">Psy</tx> <ref n="nadrzedna" to="</span>" /> <<span style='color:blue'>/pola> </zmiana> <zmiana to="kategoria" typ="0" sub="2"> <pola> <tx n="nazwa">Jamniki</tx> <ref n="nadrzedna" to="" sub="1" /> </pola> </zmiana> <zmiana to="kategoria" typ="0" sub="3"> <pola> <tx n="nazwa">Długowłose</tx> <ref n="nadrzedna" to="" sub="2" /> </pola> </zmiana> </zmiany>
Co odpowiada następującej hierarchii:
+ Psy |--+ Jamniki |-- Dlugowlose
Inaczej mówiąc sub to identyfikator kategorii, w znaczniku tx jest nazwa kategorii, a w znaczniku ref kategoria nadrzędna (rodzic).
Próbowałem tak:
<?php $domDocument = new DOMDocument; $domDocument->loadXML($xml); $domXPath = new DOMXPath($domDocument); foreach ($domXPath->query('//zmiana') as $keyDOM) { $to = $keyDOM->hasAttribute('to') ? $keyDOM->getAttribute('to') : null; $sub = $keyDOM->hasAttribute('sub') ? $keyDOM->getAttribute('sub') : null; } ?>
ale niestety wciąż nie mam dostępu do nazwy i kategorii nadrzędnej. Jakbyście to lepiej rozwiązali?