当前位置: 首页 > 图文教程 > 网络编程 > PHP > 判断ICQ是否在线的代码

PHP
php代码优化及php相关问题总结
实现提高PHP效率的集中方法
PHP中删除目录的三种方法
PHP索引数组、多维数组以及相关数组
PHP网站开发遇到的中文编码
PHP动态生成switch-PHP的eval()的使用
php获得一个文件夹下所有文件的文件名
php生成outlook-php日历文件
php的register_shutdown_function函数详解
PHP脚本的8个技巧之一-Apache DSO
PHP使用mail函数发送邮件标题乱码问题
DISCUZ架构:AJAX之ajax.js 函数之一
DISCUZ架构:AJAX之ajax.js 函数之二
DISCUZ架构:AJAX之ajax.js 函数之三
你用用PHP获取前天和昨天日期
php语言中switch的用法介绍
PHP实例:FCKeditor 的配置和使用方法
PHP5.0对象模型探索之抽象方法和抽象类
php的content-type=text/html问题
PHP分析.wav文件并绘制png格式的波形图

PHP 中的 判断ICQ是否在线的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 74 ::
收藏到网摘: n/a

  //判断ICQ是否在线的代码  

<?   
function get_status($uin)
{   
    $fp = fsockopen ("wwp.icq.com", 80, &$errno, &$errstr, 30);   
    if(!$fp)
    {   
        echo "$errstr ($errno)<br> ";   
    }
    else
    {
        fputs($fp, "GET /scripts/online.dll?icq=$uin&img=5 HTTP/1.0 ");   
        $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
?>   

//作者/来源:Alpha.Z