[php] analizowanie strony

0

Pojawia mi sie ponizszy komunikat

Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 16 bytes) in /var/www/automat/firmy/fogo2.php on line 91

gdy wykonuje sie skrypt. Z tego co sądzę jest za mało pamięci. Jak ją zwiększyć? A może chodzi o coś innego ?

0

zwiększysz w ustawieniach php. Spróbuj zoptymalizować skrypt, dodać unset tu i ówdzie.

0

A wiec zwiekszylem limit pamieci z 8M do 64M, zresetowalem apacha, wprawadzilem w kilku miejscach unset, jednakze problem nadal sie pojawia.

Skrypt ten analizuje strony firm generując Od razu dane produktow z tamtych firm i zapisujac to w postaci zapytań do bazy mysql.

Skrypt taki jest mi potrzebny, gdyż liczba produktów sięga kilku tysiącom. Wrzucanie więc recznie tego do bazy mysql mijało by sie z celem.

0

Możesz wywołać ten skrypt z linii komend? Wtedy chyba te ograniczenia nie są brane pod uwage.

0

64M na jedna strone WWW? chyba nie pobierasz ich wszystkich na raz? radzilbym napisac skrypt od nowa (nowy algorytm) z nastawieniem przede wszystkim na wykorzystanie pamieci, nastepnie na zlozonosc czasowa... Poza tym polecam rozwiazanie kilku zadan np. z Olimpiady Informatycznej - ucza innego myslenia :)

0

opracowałem szybszy algorytm i nie wystepuje juz problem z pamiecia. Zadania z Olimiady Informatycznej rozwiazywalem, ale ten sposób myślenia nie przydaje mi się w tym skrypcie. Mniejsza o to, teraz mam następujący problem.

Jak już wsominalem analizuje strony produktow danej firmy, wiec na każdej stronie jest np obrazek, ja chialbym pobrac link do tego obrazka.
Działam więc następująco. Wczytuje zawartosc, strony, za pomoca strip_tags, usuwam wszystkie taki poza img, z uwagi na to, że strona akurat tej firmy składa się głównie z css-ów, zostały mi tylko dwa taki i tekst. A jak można usunąć tekst pozostawiając same tagi ?

0

Nie baw się w strip_tags(), użyj preg_match_all()

0

O co chodzi w tej funkcji preg_match_all ? Czy ona różni sie od trip_tags ?

0

Różni się, bo jest to funkcja do obsługi wyrażeń regularnych. Trzeba będzie takie odpowiednie wyrażenie napisać i ono ładnie zrobi to co chcesz.

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