Heim > Backend-Entwicklung > PHP-Tutorial > PHP-Socket-UDP-Kommunikation

PHP-Socket-UDP-Kommunikation

*文
Freigeben: 2023-03-18 14:58:02
Original
1977 Leute haben es durchsucht

Wie führt PHPs Socket die UDP-Kommunikation durch? In diesem Artikel wird hauptsächlich die UDP-Kommunikationsmethode der Socket-Kommunikation von PHP vorgestellt und anhand von Beispielen die zugehörigen Fähigkeiten der UDP-Kommunikation von PHP anhand von Sockets analysiert. Ich hoffe, es hilft allen.

Das Beispiel in diesem Artikel beschreibt die UDP-Kommunikationsmethode der Socket-Kommunikation von PHP. Teilen Sie es als Referenz mit allen. Die Details sind wie folgt:

1. Erstellen Sie einen einfachen UDP-Server


//服务器信息 
$server = 'udp://127.0.0.1:9998'; 
//消息结束符号 
$msg_eof = "\n"; 
$socket = stream_socket_server($server, $errno, $errstr, STREAM_SERVER_BIND); 
if (!$socket) { 
  die("$errstr ($errno)"); 
} 
do { 
  //接收客户端发来的信息 
  $inMsg = stream_socket_recvfrom($socket, 1024, 0, $peer); 
  //服务端打印出相关信息 
  echo "Client : $peer\n"; 
  echo "Receive : {$inMsg}"; 
  //给客户端发送信息 
  $outMsg = substr($inMsg, 0, (strrpos($inMsg, $msg_eof))).' -- '.date("D M j H:i:s Y\r\n"); 
  stream_socket_sendto($socket, $outMsg, 0, $peer); 
} while ($inMsg !== false);
Nach dem Login kopieren


2


function udpGet($sendMsg = '', $ip = '127.0.0.1', $port = '9998'){ 
  $handle = stream_socket_client("udp://{$ip}:{$port}", $errno, $errstr); 
  if( !$handle ){ 
    die("ERROR: {$errno} - {$errstr}\n"); 
  } 
  fwrite($handle, $sendMsg."\n"); 
  $result = fread($handle, 1024); 
  fclose($handle); 
  return $result; 
} 
$result = udpGet('Hello World'); 
echo $result;
Nach dem Login kopieren

Verwandte Empfehlungen:

Detaillierte Erläuterung der PHP-Implementierung der Socket-Push-Technologie

PHP-Socket-Server-Framework-Worker

Detaillierte Einführung in die PHP-Socket-Programmierung

Das obige ist der detaillierte Inhalt vonPHP-Socket-UDP-Kommunikation. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage