generowanie dużej ilości zdjęć przez php

0

Witam,
Mam skrypt który generuje mi sporą ilość miniatur około 2000. i w pewnym momencie zatrzymuje się i otrzymuje komunikat: "ABORT: PHP cpu time limit exceeded in imagecopyresampled() called at ..." Czy można to jakoś obejść? Czy funkcja kopiowania i zmiany nazwy obrazka działa szybciej?

0

set_time_limit.

A kopiowanie i zmiana nazwy będzie szybsza, ale ma tyle wspólnego z generowaniem miniatur, co nic.

0

Dałem set_time_limit(300) na początku skryptu ale błąd nadal występuje i różnicy nie widać.

0

W sumie error nie brzmi jak error wyrzucony przez samo php, tylko albo Twój skrypt (wątpię), albo przez limit nałożony przez hosting. Jeżeli set_time_limit nie pomogło (nie podałeś jak szybko to wyskakiwało, teraz zmieniłeś na 5 minut) to podziel swoje generowanie miniatur na etapy (nie wiem co piszesz i jak ma działać, więc konkretów nie będzie) i wywołuj skrypt x razy.

0

Powiedz mi jeszcze tylko co będzie szybsze przy kopiowaniu plików jpg czy funkcja copy() czy np. fopen() i fwrite() ?

0

Sprobuj ustalic limit z poziomu .htaccess, niemniej mozliwe, ze hosting to blokuje. Zobacz w phpinfo() czy zmienila sie wartosc po ustawieniu jej wczesniej. No i 300ms to dosc malo dla 2 tys miniatur byc moze.

Do kopiowania uzyj funkcji copy

0
Coldpeer napisał(a):

Sprobuj ustalic limit z poziomu .htaccess, niemniej mozliwe, ze hosting to blokuje. Zobacz w phpinfo() czy zmienila sie wartosc po ustawieniu jej wczesniej. No i 300ms to dosc malo dla 2 tys miniatur byc moze.

Do kopiowania uzyj funkcji copy

To jest 300 sekund... http://php.net/manual/en/function.set-time-limit.php

Lepiej takie długie zadania zostawić jako robotę dla crona.

0
ipko napisał(a):

Powiedz mi jeszcze tylko co będzie szybsze przy kopiowaniu plików jpg czy funkcja copy() czy np. fopen() i fwrite() ?

....

copy

1 użytkowników online, w tym zalogowanych: 0, gości: 1