2009-06-03 7 views
3

Angenommen, Sie jetzt zu einem Jabber-Server verbunden sind,Wie testen Sie die Konnektivität in PHP?

dann, wie können Sie Ihre Verbindung zum Jabber-Server prüfen, ob nicht verloren geht?

+0

Es gibt eine Menge von Jabber Fragen aus dieser Richtung kommen. Könnte es sich lohnen, ein Buch über XMPP/Jabber wie XMPP, den definitiven Leitfaden und ein gutes PHP-Buch zu lesen? –

Antwort

1

Ich bin nicht ganz sicher, wie Jabber ein anderes Protokoll verglichen funktioniert, aber ich glaube, dass Sie eine Socket-Verbindung zum Server machen müßten, so etwas wie:

$endpoint = "SERVER"; 
$fp = fopen($endpoint, "r") or die(); 
while (! feof($fp)){ 
    // Heavy duty work goes here. 
    print fgets($fp, 1024); 
} 

Das while() Die Schleife wird ausgeführt, bis die Socketverbindung keine Daten mehr an das PHP-Skript zurückgibt. Solange sich Ihre Logik in einer solchen while() - Schleife befindet, sollte die while() - Schleife nur bei einer Verbindungsbeendigung verlassen werden.

3

Try fsockopen (http://us3.php.net/fsockopen):

$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30); 
//if the socket failed it's offline... 
if (!$fp) { 
    echo "$errstr ($errno)<br />\n"; 
}