$address = "192.40.7.93";//換成你自己的地址 $port = 10000;

if(($socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP)) == false) echo "錯誤(socket_crea " /> 亚洲精品一区av,亚洲成人午夜影院,中文字幕一区二区三区久久网站

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

PHP實現Socket服務器的代碼

<?php
ob_implicit_flush();
set_time_limit(0);

$address = "192.40.7.93";//換成你自己的地址
$port = 10000;

if(($socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP)) == false)
 echo "錯誤(socket_create):".socket_strerror(socket_last_error())."<br />";

if(socket_bind($socket,$address,$port) == false)
 echo "錯誤(socket_bind):".socket_strerror(socket_last_error())."<br />";

if(socket_listen($socket) == false)
 echo "錯誤(socket_listen):".socket_strerror(socket_last_error())."<br />";

/*
After the socket socket has been created using socket_create() and bound to a name with socket_bind(), 
it may be told to listen for incoming connections on socket. 
*/

while(true){
 if(($msgSocket = socket_accept($socket)) == false){
  echo "錯誤(socket_accept):".socket_strerror(socket_last_error())."<br />";
  break;
 }

 /*
 this function will accept incoming connections on that socket. 
 Once a successful connection is made, a new socket resource is returned, which may be used for communication. 
 If there are multiple connections queued on the socket, the first will be used. 
 If there are no pending connections, socket_accept() will block until a connection becomes present. 
 If socket has been made non-blocking using socket_set_blocking() or socket_set_nonblock(), FALSE will be returned. 
 */

 $msg = "Welcome!<br />";
 //socket_write($msg,$msg,strlen($msg));
 $command = "";

 while(true){
  if(($buf = socket_read($msgSocket,2048,php_BINARY_READ)) == false){
   echo "錯誤(socket_read):".socket_strerror(socket_last_error())."<br />";
   break 2;
  }

  /*
  The function socket_read() reads from the socket resource socket created by the socket_create() or socket_accept() functions. 
  The maximum number of bytes read is specified by the length parameter. 
  Otherwise you can use /r, /n, or /0 to end reading (depending on the type parameter, see below).   
  */

  /*
  if(!$buf = trim($buf))
   continue; // ????

  if($buf == "quit")
   break;

  if($buf == "shutdown"){
   socket_close($msgSocket);
   break 2;
  }

  $tallBack = "You say:$buf/n";
  socket_write($msgSocket,$tallBack,strlen($tallBack));
  */

  if(ord($buf) != 13)
   $command .= $buf;
  else{
   $command1 = "You Say:$command/r/n";
   socket_write($msgSocket,$command1,strlen($command1));
   echo "User typed:".$command."<br />";
   $command = "";
  }
 }
 socket_close($msgSocket);
}

socket_close($socket);
?>

 

然后打開CMD,輸入:telNET 192.40.7.93 10000,自己體驗去吧!
Javascript:window.open(this.src); src="/d/file/itjie/phpjishu/2014-10-22/6c67de6264db0150c869342c294da112.gif" onload="Javascript:if(this.width>510){this.resized=true;this.style.width=510;}">
注,要把:php_sockets.dll 打開

php技術PHP實現Socket服務器的代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 七台河市| 武清区| 青龙| 潼南县| 九寨沟县| 读书| 固镇县| 黎城县| 米易县| 广饶县| 康马县| 江城| 禹州市| 松原市| 永昌县| 临湘市| 广安市| 万盛区| 华坪县| 山丹县| 绩溪县| 周口市| 武夷山市| 福安市| 额济纳旗| 四子王旗| 额济纳旗| 元江| 冷水江市| 当阳市| 高尔夫| 芦山县| 大宁县| 安康市| 全州县| 万山特区| 太和县| 安丘市| 随州市| 田阳县| 攀枝花市|