Nom de la fonction: socket_accept ()
Version applicable: PHP 4> = 4.1.0, PHP 5, PHP 7
Utilisation: la fonction socket_accept () est utilisée pour accepter une demande de connexion et renvoie une nouvelle ressource de socket pour communiquer avec le client.
Syntaxe: Resource Socket_Accept (Resource $ socket)
paramètre:
Valeur de retour: renvoie une nouvelle ressource de socket en cas de succès, pour la communication avec le client. Retourne Faux en cas de défaillance et le code d'erreur peut être obtenu via socket_last_error ().
Exemple:
// 创建套接字$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); // 绑定套接字到IP 地址和端口socket_bind($socket, '127.0.0.1', 8080); // 开始监听连接socket_listen($socket); // 接受客户端连接请求$clientSocket = socket_accept($socket); // 与客户端进行通信while (true) { // 从客户端接收数据$data = socket_read($clientSocket, 1024); // 处理数据// 向客户端发送响应socket_write($clientSocket, "Hello, client!"); // 结束通信if ($data === 'quit') { socket_close($clientSocket); break; } } // 关闭套接字socket_close($socket);
Dans l'exemple ci-dessus, nous créons une prise et nous nous lions au port local 8080. Commençons ensuite à écouter la connexion via la fonction socket_listten (). Lorsqu'il y a une demande de connexion client, nous utilisons socket_accept () pour accepter la connexion et renvoyer une nouvelle ressource de socket $ clients. Ensuite, nous entrons une boucle, recevons des données du client via socket_read (), puis traitons les données et envoyons une réponse au client via socket_write (). Si les données reçues sont «quitter», la connexion avec le client est fermée et la communication est terminée. Enfin, nous utilisons socket_close () pour fermer la prise.