Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Out of memory przy otwieraniu pliku xlsx
grzecho83
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 31.10.2011

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


Witam, używam biblioteki SimpleXLSX.php do odczytu plików *.xlsx, przy próbie otwarcia pliku pojawia się błąd:

Fatal error: Out of memory (allocated 83886080) (tried to allocate 29970075 bytes) in /***/SimpleXLSX.php on line 535

Na domowym serwerze XAMP działa ok, problem jest po wgraniu strony na serwer zewnętrzny. W pomocy technicznej dowiedziałem się że mają limit pamięci dla php 128MB i nie można go zwiększyć.
Plik *.xlsx ma rozmiar na dysku 6,2MB, więc dlaczego rozmiar jest przekroczony? Kod PHP otwierający plik też nie jest jakoś mocno rozbudowany.
Pytanie, czy można jakoś zoptymalizować tą bibliotekę?
LInk do strony z biblioteką simplexlsx
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
trueblue
post
Post #2





Grupa: Zarejestrowani
Postów: 6 807
Pomógł: 1828
Dołączył: 11.03.2014

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


Cytat(grzecho83 @ 1.05.2020, 20:16:00 ) *
Dzięki za wytłumaczenie struktury pliku. Niestety u mnie wszystkie komórki w arkuszu zawierają stringi. mój algorytm przeszukuje kolejno wiersze sprawdzając datę dodania czy jest świeża. Gdyby chociaż data była w formie liczbowej, niestety to też string. Kolumna Opis zamówienia ma czasem ponad 1000 znaków.

Czyli tak naprawdę musiałbyś pobrać indeks i znajdywać w sharedStrings.xml odpowiadający mu string/datę i wtedy decydować o "zbudowaniu" reszty wiersza. Tyle, że u Ciebie, zresztą wspominasz o opisach, sam sharedStrings.xml stanowi problem.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 9.10.2025 - 16:31