malike 发表于 2018-2-11 12:11:55


            本文实例讲述了php简单实现短网址还原的方法。分享给大家供大家参考,具体如下:
这里以脚本之家http://www.jb51.net的短网址http://t.cn/heEHwk为例运行效果截图如下:
http://files.jb51.net/file_images/article/201605/201659114441918.jpg?201649114513
具体代码如下:
>';
$info5 = '亲!不是短网址或无效。';
function unshort($url)
{
global $info1,$info2,$info3,$info4;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER,1);
curl_setopt ($curl, CURLOPT_USERAGENT, 'Mozilla/8.0 (compatible; MSIE 8.0; Windows 7');
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_NOBODY, 0);
curl_setopt($curl, CURLOPT_TIMEOUT, 15);
curl_setopt($curl,CURLOPT_ENCODING, 'gzip');
$data = curl_exec($curl);
if(!empty($data)){
$message = curl_getinfo($curl);
curl_close($curl);
   $status = $message['http_code'];
   if ($status == '301' || $status == '302' ){
    $UrlHeader = (get_headers($url,1));
    $unurl = $UrlHeader;
    if(is_array($unurl)) {
   $unurl = $unurl;
   $unurl .=$info3.$unurl.$info4;
   return $unurl;
   }
    else {
    $unurl .=$info3.$unurl.$info4;
    return $unurl;
    }
   }
return $info1;
}
return $info2;
}
function adfunshort($url)
{
global $info3,$info4,$info5;
$c = file_get_contents($url);
$p = "/url = '(.*)';/isU";
preg_match($p, $c, $content);
$unurl = $content;
if($unurl == '') {
return $info5;
}
else {
$unurl .=$info3.$unurl.$info4;
return $unurl;
}
}
?>
短网址:


页: [1]
查看完整版本: php简单实现短网址(短链)还原的方法(测试可用)