Wątek zablokowany 2014-10-17 08:30 przez dzek69.

Jak wychwycić sytuację kiedy funkcja file_get_contents za długo wczytuje stronę

0

mam taki kłopot chce wychwycić sytuację kiedy dana funkcja będzie za długo wczytywać podaną stronę, że skrypt się nie zapętlił.

0

zapętlenie to sobie "zabezpiecz" pisząc właściwy kod.

a do zdalnego file_get_contents możesz ustawić timeout. odsyłam do googli, bo na pamięć sam nie pamiętam, więc możesz sam poszukać

0

Może zamiast file_get_contents lepiej użyć curl-a i ustawić mu timeout?

0

W tym kodzie jest

file_get_contents('./people.txt', NULL, NULL, 20, 14);

Teraz pytanie jest takie, który parametr odpowiada za timeout.

2

Żaden bezpośrednio. Pośrednio odpowiada za to trzeci parametr, $context.
http://pl1.php.net/file_get_contents

$ctx = stream_context_create(array(
    'http' => array(
        'timeout' => 1 // timeout w sekundach
        )
    )
);
file_get_contents("http://example.com/", 0, $ctx); 

Ewentualnie, możesz globalnie ustawić timeout w konfiguracji PHP - zmienna default_socket_timeout.

(nawiasem mówiąc: przekazujesz NULL w drugim parametrze, gdzie on oczekuje bool)

0

@tomi0001: naucz się czytać dokumentację. w każdym poście Cię o to proszę

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