Nom de la fonction: stream_socket_shutdown ()
Fonction Description: Stream_Socket_Shutdown () Fonction ferme les connexions de socket créées avec Stream_Socket_Client () ou Stream_Socket_Server ().
Version applicable: PHP 4> = 4.0.7, PHP 5, PHP 7
Syntaxe: bool stream_socket_shutdown (ressource $ stream, int $ comment)
paramètre:
Valeur de retour: renvoyez True sur le succès et FAUX en échec.
Exemple:
// 创建套接字连接$socket = stream_socket_client('tcp://www.example.com:80', $errno, $errstr, 30); // 发送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); // 关闭写入连接,继续读取服务器响应stream_socket_shutdown($socket, STREAM_SHUT_WR); // 读取服务器响应$response = ''; while (!feof($socket)) { $response .= fgets($socket); } // 关闭读取连接stream_socket_shutdown($socket, STREAM_SHUT_RD); // 关闭套接字连接fclose($socket);
L'exemple ci-dessus montre comment utiliser la fonction Stream_Socket_Shutdown () pour fermer la connexion d'écriture après avoir envoyé une demande HTTP et continuer à lire la réponse du serveur. Tout d'abord, utilisez la fonction Stream_Socket_Client () pour créer une connexion à socket, puis envoyez une demande HTTP et fermez la connexion d'écriture. Ensuite, utilisez la fonction FGETS () pour parcourir la réponse du serveur jusqu'à la fin. Enfin, fermez la connexion de lecture et fermez la connexion de socket.
Notez que l'ordre de clôture des connexions dans l'exemple est de fermer d'abord la connexion d'écriture, puis de fermer la connexion de lecture. En effet, dans une demande HTTP, le client envoie d'abord la demande, puis attend que le serveur réponde. Par conséquent, nous fermons d'abord la connexion d'écriture pour informer le serveur que la demande a été envoyée, puis continuons à lire la réponse du serveur.