AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP] Socket listen mit Timeout

Ein Thema von rollstuhlfahrer · begonnen am 2. Nov 2011 · letzter Beitrag vom 6. Nov 2011
 
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#1

[PHP] Socket listen mit Timeout

  Alt 2. Nov 2011, 17:33
HI @all,

ich möchte mir ein kleines PHP-Skript zusammenbauen, welches die folgenden Funktionen hat:
  1. Einen UDP-Broadcast verschicken
  2. Einen TCP-Socket aufbauen und darauf lauschen
  3. Wenn nach eine bestimmten Zeit keine Verbindung kam, den Socket wieder schließen und das Skript beenden
  4. Wenn doch in der Zwischenzeit eine Verbindung kam, dann eine Datei anlegen und dann das Skript beenden

Die ersten beiden Punkte habe ich schon fertig, nur habe ich keine Ahnung, wie mal einen Timeout bei Sockets mit PHP hinbekommt. Als Idee hatte ich, einen Fork zu erstellen und den nach einem Timeout einfach abzuschießen, aber Forks gehen mit Windows nicht.

Als Anforderung: Das Skript sollte möglichst unter beiden Systemen laufen: Windows und Ubuntu.

PHP-Quellcode:
<?php
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_set_option($socket, SOL_SOCKET, SO_REUSEADDR, 1);
socket_bind($socket, "127.0.0.1", 4567);

socket_listen($socket,1);
$dataSock = socket_accept($socket);
echo socket_read($dataSock, 1024, PHP_NORMAL_READ);
// close sockets
socket_close($socket);
?>
Das ist der Code, der auf die Verbindung wartet.

So: Wie sage ich jetzt PHP, dass es einen Timeout gibt?

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz