Maison  >  Article  >  développement back-end  >  Code PHP qui implémente la fonction de communication socket entre le client et le serveur

Code PHP qui implémente la fonction de communication socket entre le client et le serveur

小云云
小云云original
2018-02-07 10:36:352034parcourir

Cet article présente principalement PHP pour réaliser la fonction de communication entre client et serveur basée sur socket. Il a une certaine valeur de référence. Les amis intéressés peuvent s'y référer. J'espère que cela pourra aider tout le monde.

Serveur :


<?php
 set_time_limit(0);
 $host="localhost";
 $port=1001;
 //创建一个连接
 $socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)or die("cannot create socket\n");
 //绑定socket到端口
 $result=socket_bind($socket,$host,$port) or die("cannot bind port to socket\n");
 //开始监听这个端口
 $result=socket_listen($socket,4) or die("could not set up socket listen\n");
 //接受连接,另一个socket来处理通信
 $msgsock=socket_accept($socket) or die("cannot accept incoming connection\n");
 if($msgsock){
  echo date("Y-m-d H:i:s D a");
 }
 //读取客户端发送过来的信息
 $input=socket_read($msgsock,1024) or die("cannot read input\n");
 $input=trim($input);
 $output=strrev($input)."顺序反过来了吧\n";
 //对接收到的信息进行处理,然后返回到客户端
 socket_write($msgsock,$output,strlen($output)) or die("cannot write");
 //关闭socket连接
 socket_close($msgsock);
 socket_close($socket);
?>

Client :


<?php
 set_time_limit(0);
 $host="localhost";
 $port=1001;
 //创建一个socket
 $socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)or die("cannot create socket\n");
 $conn=socket_connect($socket,$host,$port) or die("cannot connect server\n");
 if($conn){echo "client connect ok!";}
 socket_write($socket,"hello world!") or die("cannot write data\n");
 $buffer=socket_read($socket,1024,PHP_NORMAL_READ);
 if($buffer){
  echo "response was:".$buffer."\n";
 }
 socket_close($socket);
?>

Recommandations associées :

nodejs combinés avec Socket.IO pour implémenter la fonction de messagerie instantanée

Exemple de partage de code de HTML5+NodeJs pour implémenter la messagerie instantanée WebSocket,

Explication détaillée de la création d'une instance de messagerie instantanée NetCore WebSocket

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn