(PHP 4 >= 4.3.0, PHP 5)
stream_set_timeout — Akımın zaman aşımı süresini ayarlar
Belirtilen akım'ın zaman aşımı süresini saniye ve mikrosaniye toplamına ayarlar.
Akım zaman aşımına uğrarsa stream_get_meta_data() işlevi tarafından döndürülen dizinin 'timed_out' anahtarına TRUE atanır, fakat herhangi bir hata veya uyarı üretilmez.
Hedef akım.
Zaman aşımı süresinin saniye sayısı.
Zaman aşımı süresinin son saniyesinden sonraki mikrosaniyelerin sayısı.
Başarı durumunda TRUE, başarısızlık durumunda FALSE döner.
Sürüm: | Açıklama |
---|---|
4.3.0 | PHP 4.3'ten itibaren bu işlev (hemen hemen) her çeşit akımla çalışabilmektedir. PHP 4.3'te soketlere dayalı akımlar, PHP çekirdeği tarafından desteklenen tek akım türü olmakla beraber diğer eklentilerdeki akımlar bu işlevi destekleyebiliyordu. |
Örnek 1 - stream_set_timeout() örneği
<?php
$fp = fsockopen("www.example.com", 80);
if (!$fp) {
echo "Dosya açılamadı\n";
} else {
fwrite($fp, "GET / HTTP/1.0\r\n\r\n");
stream_set_timeout($fp, 2);
$res = fread($fp, 2000);
$info = stream_get_meta_data($fp);
fclose($fp);
if ($info['timed_out']) {
echo 'Bağlantı zaman aşımına uğradı!';
} else {
echo $res;
}
}
?>
Bilginize:
Bu işlev, stream_socket_recvfrom() gibi ileri düzey işlemler için çalışmaz. Onlar için zaman aşımını stream_select() işlevi ile ayarlayın.
Bu işlevin ismi başta set_socket_timeout() idi, sonra socket_set_timeout() oldu, fakat artık bu isimlerin kullanımı önerilmiyor.