fsockopen függvén gond
Hi All!
Van az álábbi fottásom:
$fp = fsockopen("udp://192.168.0.196" , 27015, &$errno, &$errstr, 1.0);
if (!$fp)
{
echo"hiba";
}
else
{
fwrite($fp,$this->commands[$this->cgametype]["Serverinfo"]);
// Get rid of the header
$header = fread($fp,5);
...
}
Az egész addig nagyon szépen működik, míg létezik a célállomás. Ha viszont nem, akkor az $fp értéke nem FALSE lesz, hanem ugyanúgy egy csatornaszám, mintha létezne a kapcsolat. Az fread parancsnál emiatt, hogy egy valóságban nem létező csatornéról próbál információt fogadni, kiakasztja az egészet. A php.net-en már olvastam, hogy másnak is van valami hasonló baja a timeout-tal, stb...
A kérdésem az lenne, hogy hogyan lehet más módon ellenőrizni, hogy él -e valóban a csatorna.
■ Van az álábbi fottásom:
$fp = fsockopen("udp://192.168.0.196" , 27015, &$errno, &$errstr, 1.0);
if (!$fp)
{
echo"hiba";
}
else
{
fwrite($fp,$this->commands[$this->cgametype]["Serverinfo"]);
// Get rid of the header
$header = fread($fp,5);
...
}
Az egész addig nagyon szépen működik, míg létezik a célállomás. Ha viszont nem, akkor az $fp értéke nem FALSE lesz, hanem ugyanúgy egy csatornaszám, mintha létezne a kapcsolat. Az fread parancsnál emiatt, hogy egy valóságban nem létező csatornéról próbál információt fogadni, kiakasztja az egészet. A php.net-en már olvastam, hogy másnak is van valami hasonló baja a timeout-tal, stb...
A kérdésem az lenne, hogy hogyan lehet más módon ellenőrizni, hogy él -e valóban a csatorna.
Re: fsockopen függvén gond
A socket_set_timeout -ra mért azt írja a windows-os PHP 4.1.2,:
Warning: socket_set_timeout() is not supported in this PHP build in c:\www\cs3\counterstrike.php on line 76
:( :( :(
Re: fsockopen függvén gond
Utananeztem gyorsan,megoldast sajnos nem tudok nyujtani ,de tenyleg nem te vagy az elso aki erre panaszkodik ...
http://bugs.php.net/bug.php?id=9100&edit=1
XOR