相对网址不适用于getheaders

时间:2013-12-31 19:32:03

标签: php get-headers

这个脚本适用于img src标签中的绝对url但是如果img src标签有相对url则失败并给出错误

Warning: get_headers() [function.get-headers]:此功能仅可用于对付网址   在第一个链接img src是相对url,但在第二个链接img src是绝对url,它给出了完美的结果,但我希望我的脚本在两种情况下工作任何想法??

<?php
$websitelink = 'http://img172.imagevenue.com/img.php?image=90465_Gwen3_122_17lo.jpg';

//  $websitelink='http://www.santabanta.com/bollywood/76432/whoa-after-200-crore-now-dhoom-3-races-for-rs-300-crore-mark/';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $websitelink);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$resulty = curl_exec($ch);
$doc = new DOMDocument();
@$doc->loadHTML($resulty);
$tags = $doc->getElementsByTagName('img');
foreach ($tags as $tag) {
    $data = get_headers($tag->getAttribute('src'), 1);
    if ((intval($data["Content-Length"])) >= 30720) {
        $op7 = '' . $tag->getAttribute('src') . '';
        echo $op7 . '</br>';
    }
}

1 个答案:

答案 0 :(得分:1)

函数get_headers实际上执行 HTTP GET请求,因此它需要一个完全限定的地址,如果只指定一个相对URL,则无法工作。

您必须推断出您要加载的图片的完整地址是什么。