将微博中的短网址还原为实际网址

由于微博中有字数限制,所以如果你发的是网址,会自动将其变为短网址。之前我的几篇文章介绍了如何将网址转为短网址,这里我们反过来,把短网址还原为实际网址。请参照下面的程序,用PHP实现:

<?php
$url = "http://163.fm/1QLJ8U";
echo unshorten($url);

function unshorten($url) 
{
    $url = trim($url);
    $headers = get_headers($url);
    $location = $url;
    $short = false;
    foreach($headers as $head) 
    {
        if($head=="HTTP/1.1 302 Found") 
            $short = true;
        if($short && startwith($head,"Location: ")) 
        {
            $location = substr($head,10);
        }
    }
    return $location;
}

function startwith($Haystack, $Needle)
{
    return strpos($Haystack, $Needle) === 0;
}
?>


程序运行结果如下:

http://ifelsend.com

相关文章

发表评论

返回顶部