Witam,
Mały problem z parsowaniem

parser xml wygląda tak:

  1. $xml = new XMLReader();
  2. $xml->open($dane);
  3.  
  4. $count=0;
  5.  
  6. while($xml->read())
  7. {
  8. if($xml->nodeType == XMLReader::ELEMENT)
  9. {
  10. $name = $xml->name;
  11.  
  12. if ($xml->name == 'PRODUCT')
  13. {
  14. $notes[$count] = array();
  15. }
  16. }
  17.  
  18. if($xml->nodeType == XMLReader::TEXT || $xml->nodeType == XMLReader::CDATA)
  19. {
  20. $notes[$count][$name] = trim($xml->value);
  21. }
  22.  
  23. if($xml->nodeType == XMLReader::END_ELEMENT)
  24. {
  25. if ($xml->name == 'PRODUCT')
  26. {
  27.  
  28. $count++;
  29. }
  30. }
  31.  
  32. }


struktura xml wygląda tak
  1. <PRODUCTS>
  2. <PRODUCT>
  3.  
  4. (...)
  5.  
  6. <PERSONS>
  7. <PERSON role="autor">
  8. <![CDATA[AUTOR]]>
  9. </PERSON>
  10. <PERSON role="tłumacz">
  11. <![CDATA[TŁUMACZ]]>
  12. </PERSON>
  13. <PERSON role="tłumacz">
  14. <![CDATA[TŁUMACZ1]]>
  15. </PERSON>
  16. </PERSONS>
  17.  
  18. (...)
  19.  
  20. </PRODUCT>
  21. </PRODUCTS>



Parserw zwraca tablice z tagiem
PERSON -> TŁUMACZ1
Pomimo ze PERSONS zawierają AUTORA i jescze jednego TŁUMACZA
Czy da sie to jakoś wcyiągnąć tym parserem ?