Position actuelle: Accueil> Catégories de fonctions> stream_set_timeout

stream_set_timeout

Définir le délai d'attente sur le flux
Nom:stream_set_timeout
Catégorie:Flux
Langage de programmation:php
Description en une ligne:Définissez l'heure du délai d'expiration pour le flux spécifié

Nom de la fonction: stream_set_timeout ()

Version applicable: PHP 4, PHP 5, PHP 7

Utilisation: stream_set_timeout (ressource $ stream, int $ seconds, int $ microseconds = 0): bool

Description de la fonction: Stream_set_timeout () est utilisée pour définir l'heure du délai d'expiration du flux spécifié. Le délai d'expiration spécifie le temps maximum pour attendre les données lorsque le flux est lu ou écrit. Si aucune donnée n'est lue ou écrite dans le délai d'attente, la fonction renvoie False.

paramètre:

  • $ Stream: la ressource Stream pour définir l'heure du délai d'attente.
  • $ secondes: le nombre de secondes partie du temps d'attente. S'il est défini sur 0, il n'y a pas de limite de délai d'attente.
  • $ microsecondes: les microsecondes partie du temps d'attente. La valeur par défaut est 0.

Valeur de retour: renvoyer true si l'heure du délai d'expiration est définie avec succès; Sinon, renvoyez false.

Exemple:

 // 创建一个TCP 客户端连接$socket = stream_socket_client('tcp://www.example.com:80', $errno, $errstr, 30); if (!$socket) { die("连接失败: $errstr ($errno)"); } // 设置超时时间为5秒if (stream_set_timeout($socket, 5) === false) { die("设置超时时间失败"); } // 发送HTTP请求$request = "GET / HTTP/1.1\r\n"; $request .= "Host: www.example.com\r\n"; $request .= "Connection: close\r\n\r\n"; fwrite($socket, $request); // 读取响应$response = ''; while (!feof($socket)) { $response .= fread($socket, 8192); } // 关闭连接fclose($socket); echo $response;

Dans l'exemple ci-dessus, nous créons d'abord une connexion client TCP à l'aide de la fonction Stream_Socket_Client (). Ensuite, utilisez la fonction Stream_Set_Timeout () pour définir le délai d'attente sur 5 secondes. Ensuite, nous avons envoyé une demande HTTP et lu la réponse du serveur. Enfin, la connexion est fermée et la réponse est imprimée.

Veuillez noter que la définition du délai d'expiration ne s'applique que pour lire et écrire des opérations et n'affecte pas le processus d'établissement ou de clôture de connexion.

Fonctions similaires
Articles populaires