网站用户名检查

时间:2013-09-06 23:39:43

标签: php username

我想创建一个函数,它接受一个URL参数和一个转到该url的用户名参数,输入用户名,如果页面显示用户名不存在(错误),它将返回false,否则它将返回false返回true。所以我尝试了,我做了一些像这样的事情,但它没有用。

function ($url, $username) {
    $main = file_get_contents($url.$username);
    if (@$main) { return false; }
    else { return true; }
} 

因此,如果您对如何使这个想法真正起作用有任何想法,请帮助我

2 个答案:

答案 0 :(得分:2)

$site = 'https://twitter.com/';
$username = 'SteveMartinToGo';
$url = $site.$username;

function urlExists($url=NULL) {
    if($url == NULL) return false;
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_TIMEOUT, 5);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $data = curl_exec($ch);
    $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
    if($httpcode >= 200 && $httpcode < 400){
        return true;
    } else {
    return false;
    }
}

if(urlExists($url)) {
    echo 'url exists';
} else {
    echo 'url does not exist';
}

问题在于某些网站(如Facebook)将返回200而不是404,因此即使不是,网址也会显示为现有网址。另外,我从其他地方获得了这个功能(不记得在哪里),所以我不想对这个代码赞不绝口。希望它有所帮助...

编辑:更新因为fred-ii的鹰眼和建议。 :)

答案 1 :(得分:0)

拥有网址的实际结构非常重要。如果URL中没有特殊字符可以屏蔽,您可以进行打印并查看源代码(HTML)。