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

socket_recvmsg

Lire un message
Nom:socket_recvmsg
Catégorie:Prises
Langage de programmation:php
Description en une ligne:Recevoir un message

Nom de la fonction: socket_recvmsg ()

Version applicable: PHP 8.0.0 et plus

Utilisation: socket_recvmsg (ressource $ socket, socketmsgflags & $ drapeaux): socketmsg

paramètre:

  • $ socket: représente une ressource de socket valide pour recevoir des messages.
  • & $ Flags: un paramètre de référence, utilisé pour recevoir des bits d'indicateur lors de la réception de messages.

Valeur de retour:

  • Renvoie un objet socketmsg contenant les détails du message reçu.

Exemple:

 // 创建一个TCP socket $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); if ($socket === false) { echo "socket_create() 失败: " . socket_strerror(socket_last_error()) . "\n"; exit; } // 绑定socket 到IP 地址和端口if (socket_bind($socket, '127.0.0.1', 8080) === false) { echo "socket_bind() 失败: " . socket_strerror(socket_last_error($socket)) . "\n"; exit; } // 监听连接if (socket_listen($socket, 5) === false) { echo "socket_listen() 失败: " . socket_strerror(socket_last_error($socket)) . "\n"; exit; } // 接受客户端连接$clientSocket = socket_accept($socket); if ($clientSocket === false) { echo "socket_accept() 失败: " . socket_strerror(socket_last_error($socket)) . "\n"; exit; } // 接收消息$flags = MSG_WAITALL; $message = socket_recvmsg($clientSocket, $flags); if ($message === false) { echo "socket_recvmsg() 失败: " . socket_strerror(socket_last_error($clientSocket)) . "\n"; exit; } // 打印接收到的消息echo "接收到的消息:\n"; var_dump($message); // 关闭socket 连接socket_close($clientSocket); socket_close($socket);

illustrer:

  • Dans l'exemple, une prise TCP est d'abord créée et liée à l'adresse IP locale et au port.
  • Ensuite, écoutez la demande de connexion via la fonction socket_listten () et acceptez la connexion client via la fonction socket_accept (), en obtenant une nouvelle ressource de socket $ clients.
  • Enfin, le message envoyé par le client est reçu en appelant la fonction socket_recvmsg () et stocké dans la variable de message $.
  • Enfin, nous imprimons le message reçu et fermons la connexion de socket.

Veuillez noter que cet exemple ne montre que l'utilisation de base de la fonction socket_recvmsg () et peut nécessiter une modification et une gestion des erreurs appropriés en fonction des besoins spécifiques lors de son utilisation.

Fonctions similaires