Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiele für Socket-Anfragen und -Empfang

Beispiele für Socket-Anfragen und -Empfang

WBOY
WBOYOriginal
2016-08-08 09:21:38971Durchsuche

Client

error_reporting(E_ALL);
set_time_limit(0);
echo "

TCP/IP-Verbindung$port = 1935;
$ip = "127.0.0.1";
/*
+----------------- - --------------
* Gesamter @Socket-Verbindungsprozess
+----------------------- --------
* @socket_create
* @socket_connect
* @socket_write
* @socket_read
* @socket_close
+-------- ------------------------
*/
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($ socket < 0) {
echo "socket_create() failed: reason: " . socket_strerror($socket) .
}else {
echo "OK.n";
}
echo „Es wird versucht, eine Verbindung zum ‚$ip‘-Port ‚$port‘...n herzustellen“;
$result = socket_connect($socket, $ip, $port);
if ($result < ; 0 ) {
echo "socket_connect() failed.nReason: ($result) " . socket_strerror($result) . else {
echo "Connect OKn";
}
$in = "Haben Sie unseren Namen gesehen";
$out = '';
if(!socket_write($socket, $in, strlen($in))) {
echo "socket_write() failed: reason: " . socket_strerror($socket) "n";
}else {
echo "Informationen erfolgreich an den Server gesendet! n";
}
while($out = socket_read($socket, 8192)) {
echo "Serverrückgabeinformationen erfolgreich empfangen! n";
echo "Der akzeptierte Inhalt ist:",$out;
}
echo "Close SOCKET...n";
socket_close($socket);
echo "Close OKn";

?>

Server

//Stellen Sie sicher, dass beim Herstellen einer Verbindung mit dem Client keine Zeitüberschreitung auftritt
set_time_limit(0 );
$ip = '127.0.0.1';
$port = 1935;
/*
+------------------- ------------
* Der gesamte Prozess der @socket-Kommunikation
+----------------------- -- ------
* @socket_create
* @socket_bind
* @socket_listen
* @socket_accept
* @socket_read
* @socket_write
* @socket _close
+--------------------------------
*/
/*--- --- ---------- Die folgenden Operationen stammen aus dem Handbuch -------------------*/
if(($sock = socket_create(AF_INET ,SOCK_STREAM,SOL_TCP)) < 0) {
echo "socket_create() fehlgeschlagen, weil: ".socket_strerror($sock)."n";
}
if(($ret = socket_bind ($sock,$ip,$port)) < 0) {
echo "socket_bind() fehlgeschlagen, weil: ".socket_strerror($ret)."n";
}
if( ( $ret = socket_listen($sock,4)) < 0) {
echo "socket_listen() fehlgeschlagen, weil: ".socket_strerror($ret)."n";
}
$ count = 0 ;
do {
if (($msgsock = socket_accept($sock)) < 0) {
echo "socket_accept() failed: reason: " . socket_strerror($msgsock) .
break;
} else {

//Send to client
$msg="Sehen Sie, Sie haben able angerufen! n";
socket_write($msgsock, $msg, strlen($msg));

$buf = socket_read($msgsock,8192);


$talkback = „Nachricht erhalten: $bufn“;
                                                                                                                                                     echo $talkback; 🎜 >
}
//echo $buf;
socket_close($msgsock);
} while (true) ;
socket_close($sock);
?>


Das Obige stellt eine Socket-Anfrage vor und zeigt Beispiele, einschließlich relevanter Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn