Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [XML]XMLreader i pomijanie, dublowanie
Larges
post
Post #1





Grupa: Zarejestrowani
Postów: 333
Pomógł: 16
Dołączył: 13.05.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Witam przeglądałem forum odnośnie pomijania węzłów i atrybutów przez XMLreader. Niestety znalazłem coś takiego:
http://forum.php.pl/index.php?showtopic=78...rt=#entry401680

W powyższym wątku brakuje rozwiązania problemu. Działam na plikach małych i mega dużych. Obecnie testuję na małych. Doradzono mi XMLreader do pracy z dużymi ale już widzę problem z pomijaniem węzłów i atrybutów bądź ich dublowaniem.

Dam przykład mojego działania:

kawałek xml-a
Kod
<trip date="2009-03-15" period="4" catalog="Z01" template="" id="15146">
<hotel code="SHANDRANJP" destCode="ITA"/>
</trip>


Kod
    $xml = new XMLReader();
    $xml->open($plik);

    while ($xml->read()) {
        $date = $xml->getAttribute('date');
        $period = $xml->getAttribute('period');
        $catalog = $xml->getAttribute('catalog');
        $template = $xml->getAttribute('template');
        $id_ = $xml->getAttribute('id');
        $hotel_code = $xml->getAttribute('country');
        $hotel_descode = $xml->getAttribute('destCode');
   }


Dodam że całość chcę wrzucić w bazę a żeby nie było pustych informacji zrobiłem coś na zasadzie

if(isset($date)) {
dalsze polecenie
}

W pliku mamy trip i hotel, co prawda atrybuty się nie dublują nazwami ale czy napewno odczytuje się je jednakową formułą? Są one w innych znacznikach. Wcześniej korzystałem z SimpleXML - b. proste w obsłudze, jednak nie ma bata przerobić nim kilkuset megowe pliki a mam nawet 1gb...

$id_ = $xml->getAttribute('id');
$hotel_code = $xml->getAttribute('country');


--------------------
Kliknij POMÓGŁ jeśli moja odpowiedź okazała się użyteczna!
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 01:34