Home >Backend Development >PHP Tutorial >试试看这个判断ICQ是否在线的代码好用吗?_PHP
function get_status($uin)
{
$fp = fsockopen ("wwp.icq.com", 80, &$errno, &$errstr, 30);
if(!$fp)
{
echo "$errstr ($errno)
\n";
}
else
{
fputs($fp, "GET /scripts/online.dll?icq=$uin&img=5 HTTP/1.0\n\n");
$do = 'yes';
while(!feof($fp))
{
$line = fgets ($fp,128);
$do = ($do == 'yes')?'yes':(eregi("^GIF89", $line))?'yes':'no';
//echo $line;
if($do == 'yes')
{
if(ereg("@", $line))
{
return 'online';
}
elseif(ereg("醱", $line))
{
return 'offline';
}
elseif(ereg("S", $line))
{
return 'disabled';
}
}
}
fclose($fp);
}
return 'unknown!';
}
$uin="72485936"; // sonymusic 的ICQ,呵呵。
echo get_status($uin);
// offline
// HTTP/1.0 200 OK Content-type: image/gif GIF89a(幵觮R瑴螗#%醱` ?0? 靦Wb缒unknown
// online
// HTTP/1.0 200 OK Content-type: image/gif GIF89a(幵觮R 瑴螗#%?@ ?0?U靦WB鐒unknown
?>