Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Spreadsheet_Excel_Writer - ZLOŻONOŚĆ OBLICZENIOWA
Forum PHP.pl > Forum > PHP
len13
Witam,

Korzystam z klasy PEAR Spreadsheet_Excel_Writer do exportu danych do pliku xml, problem polega na tym ze przy exporcie wiekszej ilosci danych (ja mam ok 30 000 rekordow) klasa ta zaczyna bardzo wolno dzialac, (trwa to ponad 30 min) co jest niedopuszczalnym czasem. Znacie jakies szybki algorytm (nie potrzebuje formul itp, jedynie formatowanie szerokosci kolumn) ktory zrobily by to w mniej niz 5 min? Jesli nie algorytm to jakis opis struktury (kodowania) plikow .XLS tak abym mogl taki algorytm sam napisac.

prosze o szybka odpowiedz
Babcia@Stefa
Spróbuj wykonać skrypt w tle. I sprawdzać co jakiś czas wyniki np. ajaxem (np. czy utworzony plik przez koniec tego skryptu istnieje)

Dziękuję, Babcia@Stefa
wlamywacz
Babcia@Stefa musisz na każdy temat odpisywać ? Co mu to da że sprawdzi ajaxem skoro mu chodzi o szybkość wykonywania operacji na tym pliku?
len13
Hehe, dobrze cos sie dzieje wogole smile.gif ..problemu jeszcze nie rozwiazalem niestety
oto zaleznosc czasowa do ilosci danych
ilosc danych (rekordow) | czas wykonania(s)
1000 | 8
2000 | 20
3000 | 45
4000 | 104
.....
20000 | 40 min - co jest niedopuszczalne

tak wiec jak widac nie jest dobrze, satysfakcjonuje mnie tylko zlozonosc liniowa

czekam na jakis pomysl....
ps. jesli ktos sie czuje na silach i ma czas no a przede wszystki jakies doswiadczenie, ja go mam niestety malo sad.gif, to mozna to napisac od nowa tak aby byla nastawiona na szybkosc (dokumentacja: http://sc.openoffice.org/excelfileformat.pdf). potrzebuje pomocy! zalezy mi na czasie!!!!
Pilsener
Może czegoś nie rozumiem, ale po co Ci ta klasa, jak chcesz tylko stworzyć zwykły plik xml? Może spróbuj napisać coś swojego (lub poszukać gotowca), co wykorzysta funkcje w PHP do obsługi xml? 1000 rekordów i aż 8 sekund? Ja korzystam z tej klasy do generowania złożonych raportów XLS i razem z pobieraniem/przetwarzaniem danych z bazy nie zajmuje to więcej niż 2 sekundy. Może problem leży nie w tej klasie tylko gdzie indziej?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.