Mit folgendem Code, kann ich 1 Anfrage empfangen und schreiben:PHP Socket Listening Schleife
function listen()
{
// Set time limit to indefinite execution
set_time_limit (0);
// Set the ip and port we will listen on
$address = 'XX.XX.XX.XXX';
$port = XXXX;
// Create a TCP Stream socket
$sock = socket_create(AF_INET, SOCK_STREAM, 0);
// Bind the socket to an address/port
$bind = socket_bind($sock, $address, $port);
// Start listening for connections
socket_listen($sock);
/* Accept incoming requests and handle them as child processes */
$client = socket_accept($sock);
// Read the input from the client – 1024 bytes
$input = socket_read($client, 2024);
// Strip all white spaces from input
echo $input;
// Close the master sockets
$close = socket_close($sock);
var_dump($close);
}
listen();
Aber es schließt sich automatisch hören, sobald es 1 Paket empfangen. Ich muss weiterhin Pakete empfangen, bis ein Beenden oder ein Schließbefehl empfangen wird.
Wie soll ich den obigen Code ändern, um diese Funktion zu einer Schleife zu machen?
Wenn ich Daten über diesen Port sende, bekomme ich ein Zeichen, dann hört alles auf zu drucken. Ich denke, das war das Problem des ursprünglichen Posters. – adrianTNT