PHP实现Socket服务器的代码

前端之家收集整理的这篇文章主要介绍了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())."
"; if(socket_bind($socket,$address,$port)==false)
echo"错误(socket_bind):".socket_strerror(socket_last_error())."
"; if(socket_listen($socket)==false)
echo"错误(socket_listen):".socket_strerror(socket_last_error())."
"; /
Afterthesocketsockethasbeencreatedusingsocket_create()andboundtoanamewithsocket_bind(),
itmaybetoldtolistenforincomingconnectionsonsocket.
/ while(true){
if(($msgSocket=socket_accept($socket))==false){
echo"错误(socket_accept):".socket_strerror(socket_last_error())."
";
break;
} /
thisfunctionwillacceptincomingconnectionsonthatsocket.
Onceasuccessfulconnectionismade,anewsocketresourceisreturned,whichmaybeusedforcommunication.
Iftherearemultipleconnectionsqueuedonthesocket,thefirstwillbeused.
Iftherearenopendingconnections,socket_accept()willblockuntilaconnectionbecomespresent.
Ifsockethasbeenmadenon-blockingusingsocket_set_blocking()orsocket_set_nonblock(),FALSEwillbereturned.
/ $msg="Welcome!
";
//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())."
";
break2;
} /
Thefunctionsocket_read()readsfromthesocketresourcesocketcreatedbythesocket_create()orsocket_accept()functions.
Themaximumnumberofbytesreadisspecifiedbythelengthparameter.
Otherwiseyoucanuse\r,\n,or\0toendreading(dependingonthetypeparameter,seebelow).
/ /
if(!$buf=trim($buf))
continue;//???? if($buf=="quit")
break; if($buf=="shutdown"){
socket_close($msgSocket);
break2;
} $tallBack="Yousay:$buf\n";
socket_write($msgSocket,$tallBack,strlen($tallBack));
/ if(ord($buf)!=13)
$command.=$buf;
else{
$command1="YouSay:$command\r\n";
socket_write($msgSocket,$command1,strlen($command1));
echo"Usertyped:".$command."
";
$command="";
}
}
socket_close($msgSocket);
} socket_close($socket);
?> 然后打开CMD,输入:telnet192.40.7.9310000,自己体验去吧!
<IMG style="CURSOR: pointer" onclick=javascript:window.open(this.src); src="http:https://files.jb51.cc/upload/20080403190845579.gif" onload="javascript:if(this.width>510){this.resized=true;this.style.width=510;}">
注,要把:PHP_sockets.dll 打开

原文链接:https://www.f2er.com/php/29714.html

猜你在找的PHP相关文章