获取QQ昵称

代码

<?php
// 定义变量 $qq ,获取 GET 请求中名为 qq 的参数值
$qq = $_GET['qq'];

// 判断 $qq 是否为空
if ($qq != null) {
    // 拼接 QQ 头像信息查询的 URL,并发送 HTTP 请求获取数据
    $urlPre = 'http://r.qzone.qq.com/fcg-bin/cgi_get_portrait.fcg?g_tk=3557289004&uins=';
    $data = file_get_contents($urlPre . $qq);

    // 将 GB2312 编码转换为 UTF-8 编码
    $data = iconv("GB2312", "UTF-8", $data);

    // 使用正则表达式匹配 JSON 数据,并解析得到 QQ 昵称
    $pattern = '/portraitCallBack\\((.*)\\)/is';
    preg_match($pattern, $data, $result);
    $result = $result[1];
    $result = json_decode($result, true);
    $qqname = $result[$qq][6];

    // 判断是否获取到了 QQ 昵称,如果没有则赋值为“未知昵称”
    if (!$qqname) {
        $msg = '未知昵称';
    } else {
        // 否则将 QQ 昵称赋值给变量 msg 
        $msg = $qqname;
    }
} else {
     // 如果没有传入 qq 参数,则返回提示信息“请输入QQ”
     $msg = "请输入QQ";
}

// 输出结果
echo $msg;
?>

使用方式

http(s)://域名/文件.php?qq=3557289004

这里是查询天空QQ的昵称。

阅读剩余
THE END