激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - PHP實現Socket服務器的代碼

PHP實現Socket服務器的代碼

2019-10-27 11:54php代碼網 PHP教程

PHP實現Socket服務器的代碼

  1. <?php  
  2. ob_implicit_flush();  
  3. set_time_limit(0);  
  4.  
  5. $address = "192.40.7.93";//換成你自己的地址  
  6. $port = 10000;  
  7.  
  8. if(($socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP)) == false)  
  9.  echo "錯誤(socket_create):".socket_strerror(socket_last_error())."<br />";  
  10.  
  11. if(socket_bind($socket,$address,$port) == false)  
  12.  echo "錯誤(socket_bind):".socket_strerror(socket_last_error())."<br />";  
  13.  
  14. if(socket_listen($socket) == false)  
  15.  echo "錯誤(socket_listen):".socket_strerror(socket_last_error())."<br />";  
  16.  
  17. /*  
  18. After the socket socket has been created using socket_create() and bound to a name with socket_bind(),   
  19. it may be told to listen for incoming connections on socket.   
  20. */  
  21.  
  22. while(true){  
  23.  if(($msgSocket = socket_accept($socket)) == false){  
  24.   echo "錯誤(socket_accept):".socket_strerror(socket_last_error())."<br />";  
  25.   break;  
  26.  }  
  27.  
  28.  /*  
  29.  this function will accept incoming connections on that socket.   
  30.  Once a successful connection is made, a new socket resource is returned, which may be used for communication.   
  31.  If there are multiple connections queued on the socket, the first will be used.   
  32.  If there are no pending connections, socket_accept() will block until a connection becomes present.   
  33.  If socket has been made non-blocking using socket_set_blocking() or socket_set_nonblock(), FALSE will be returned.   
  34.  */  
  35.  
  36.  $msg = "Welcome!<br />";  
  37.  //socket_write($msg,$msg,strlen($msg));  
  38.  $command = "";  
  39.  
  40.  while(true){  
  41.   if(($buf = socket_read($msgSocket,2048,PHP_BINARY_READ)) == false){  
  42.    echo "錯誤(socket_read):".socket_strerror(socket_last_error())."<br />";  
  43.    break 2;  
  44.   }  
  45.  
  46.   /*  
  47.   The function socket_read() reads from the socket resource socket created by the socket_create() or socket_accept() functions.   
  48.   The maximum number of bytes read is specified by the length parameter.   
  49.   Otherwise you can use \r, \n, or \0 to end reading (depending on the type parameter, see below).     
  50.   */  
  51.  
  52.   /*  
  53.   if(!$buf = trim($buf))  
  54.    continue; // ????  
  55.  
  56.   if($buf == "quit")  
  57.    break;  
  58.  
  59.   if($buf == "shutdown"){  
  60.    socket_close($msgSocket);  
  61.    break 2;  
  62.   }  
  63.  
  64.   $tallBack = "You say:$buf\n";  
  65.   socket_write($msgSocket,$tallBack,strlen($tallBack));  
  66.   */  
  67.  
  68.   if(ord($buf) != 13)  
  69.    $command .= $buf;  
  70.   else{  
  71.    $command1 = "You Say:$command\r\n";  
  72.    socket_write($msgSocket,$command1,strlen($command1));  
  73.    echo "User typed:".$command."<br />";  
  74.    $command = "";  
  75.   }  
  76.  }  
  77.  socket_close($msgSocket);  
  78. }  
  79.  
  80. socket_close($socket);  
  81. ?> 

然后打開CMD,輸入:telnet192.40.7.9310000,自己體驗去吧!

PHP實現Socket服務器的代碼

注,要把:php_sockets.dll 打開

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产免费一区二区三区 | 国产九色91 | 一区二区三区在线视频观看58 | 深夜视频在线观看 | 欧美精品一区二区三区在线 | 久久国产精品99久久人人澡 | 粉嫩一区| 成人男女激情免费视频 | 91av在线免费播放 | 国产精品av久久久久久久久久 | 国产精品成人免费一区久久羞羞 | 久久久久.com | 91成人亚洲 | 亚洲精品成人久久久 | 国产一区二区国产 | 一级啪啪片 | 日韩中文一区 | 午夜激情视频免费 | 免费一级欧美大片视频 | 99激情| 免费看黄色一级片 | 亚洲精品 在线播放 | 日韩视频1 | 成人精品一区二区三区中文字幕 | 关键词| 欧美成年性h版影视中文字幕 | 色婷婷久久久亚洲一区二区三区 | 中文字幕免费在线看 | 久久经典国产视频 | 久久久久久久久国产 | 九九色精品 | 日韩中文字幕三区 | 久久久线视频 | 欧美黄色一区 | 国产精品成人久久 | 成人性视频欧美一区二区三区 | 九九午夜视频 | 永久免费毛片 | 99re热视频这里只精品 | 久久国产不卡 | 99精品视频在线看 |