(PHP 4 >= 4.3.0, PHP 5, PHP 7)
stream_set_timeout — Akımın zaman aşımı süresini ayarlar
$akım
, int $saniye
[, int $mikrosaniye = 0
] )
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.
akımHedef akım.
saniyeZaman aşımı süresinin saniye sayısı.
mikrosaniyeZaman 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.