Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Parsowanie duzych plikow XML z PHP
Yaros
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 7.03.2005

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


Witam!! Poradzcie mi od czego moglym zaczac. Chce zrobic programik ktory bedzie parsowala pliki xml do tablicy w PHPie. Pliki XML bede duzo po kilkadziesiat mega. Mam tylko je odczytac i zapisac do tablicy. Wiem ze jest duzo sposobow. Ale chce zaczac juz pracowac z czyms , czego bede pewien. To znaczy ze nie okaze sie ze dziala dla malych plikow XML, a gdy przyjdzie testowanie na wiekszych to sie wykrzaczy. Uzywam php-a 4.3. Dzieki za wszelka pomoc.


Co na przyklad myslicie o domxml, rozszerzeniu dla php 4.3 questionmark.gif

Ten post edytował Yaros 18.03.2005, 08:59:00
Go to the top of the page
+Quote Post
Solitary
post
Post #2





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 29.08.2002
Skąd: Bydgoszcz

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


Wydaje mi się, ze rozwiązanie ładowania wszystkiego do pamieci nie jest najlepszym pomysłem. Pomyśl, jesli plik XML ma mieć kilkadziesiąc mega.. to wyobraź sobie ile czasu zajmie to phpowi i ile pamieci zajmie i czy przypadkiem (jesli nie masz wlasnego serwera tylko wykupiony) nie przekroczysz limitu pamieci dla procesów php.

Dodatkowym apektem jest strona www, jezeli to ma byc przez nia wykonywane a nie jako CLI, to takie rozwiazanie odpada calkowicie. Teoretyczne zalozenie, że po przeparsowaniu xmla zajmuje on w pamieci np. 50MB, teraz załóżmy, że weszło 10 użytkowników na strone (a strona wykonuje się np. 10-20 sekund), a więc mamy 500MB zajętej pamięci.

Moim zdaniem, lepiej jeszcze parsować segmentami.


--------------------
Pozdrawiam,
Solitary
Go to the top of the page
+Quote Post
hawk
post
Post #3





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

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


Jezeli parsowac duze pliki XML, to przez SAX. Przynajmniej nie bedziesz trzymal dokumentu XML w pamieci. Niestety, trzeba trzymac sama tablice php, czyli wymagania pamieciowe i tak beda duze.

No i jak napisal Solitary, calkowicie odpada w przypadku serwisu WWW.
Go to the top of the page
+Quote Post

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: 20.08.2025 - 09:42