这个脚本适用于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>';
}
}
答案 0 :(得分:1)
函数get_headers
实际上执行 HTTP GET
请求,因此它需要一个完全限定的地址,如果只指定一个相对URL,则无法工作。
您必须推断出您要加载的图片的完整地址是什么。