Witam
Muszę napisać skrypt który wprowadzi jednorazowo kilkadziesiąt tysięcy pozycji, a następnie każdego dnia będzie dokonywał aktualizacji magazynowej. Korzystając z manual'a mam taki kod:

  1. <?php
  2. $xml = new XMLReader();
  3.    $xml->open("test.xml");
  4.    $xml->setParserProperty(2,true);
  5.  
  6.    while ($xml->read()) {
  7.        switch ($xml->name) {
  8.        case "autorzy":
  9.            $xml->read();
  10.            $aktualizacja["autorzy"] = $xml->value;
  11.            $xml->read();
  12.            break;
  13.        case "tytul":
  14.            $xml->read();
  15.            $aktualizacja["tytul"] = $xml->value;
  16.            $xml->read();
  17.            break;
  18.        case "podtytul":
  19.            $xml->read();
  20.            $aktualizacja["podtytul"] = $xml->value;
  21.            $xml->read();
  22.            break;
  23.        }
  24. // tutaj nastapiloby wpisanie do tabeli mysql ponizszej tablicy (i tak w kolo - 60 000 razy)
  25.    }
  26.  
  27.    $xml->close();
  28.    echo $aktualizacja["autorzy"];
  29.    echo "<br>".$aktualizacja["tytul"];
  30. ?>



Który pasuje do tak skonstruowanego xml'a:
  1.  
  2. <?xml version="1.0" encoding="ISO-8859-2"?>
  3. <ksiazki>
  4. <autorzy>b</autorzy>
  5. <tytul>a</tytul>
  6. <wydawca>s</wydawca>
  7. </ksiazki>


Wszystko byloby dobrze ale mój faktyczny xml ma postać taką:

  1. <transakcjaId="5858-445534534535">
  2. <books>
  3. <book indeks="121313133131sqw">
  4. <autorzy><![CDATA[x]]></autorzy>
  5. ....
  6. </book>
  7. <book indeks="2343242224sqw">
  8. <autorzy><![CDATA[ddd]]></autorzy>
  9. ....
  10. </book>
  11. </books>
  12. <nowosci>
  13. ......
  14. <nowosci>
  15. </transakcjaId>