(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
stream_set_timeout — Configure la durée d'expiration d'un flux
stream_set_timeout() configure la durée d'expiration du flux stream
, exprimé comme la durée de seconds
secondes et microseconds
microsecondes.
Lorsque le flux se termine, la clé 'timed_out' du tableau retourné par stream_get_meta_data() est définie à true
, cependant, aucune erreur ou alerte n'est générée.
stream
Le flux cible.
seconds
Le nombre de secondes entières du délai d'expiration.
microseconds
Le nombre de microsecondes entières du délai d'expiration.
Exemple #1 Exemple avec stream_set_timeout()
<?php
$fp = fsockopen("www.example.com", 80);
if (!$fp) {
echo "Impossible d'ouvrir\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 'Délai de connexion dépassé !';
} else {
echo $res;
}
}
?>
Note:
Cette fonction ne fonctionne pas avec les opérations avancées comme stream_socket_recvfrom(), utilisez plutôt stream_select() avec une durée d'expiration en paramètre.
Cette fonction était appelée auparavant set_socket_timeout(), et aussi socket_set_timeout(), mais ces appellations sont obsolètes.