强制下载标头无法按预期工作

时间:2015-07-10 21:11:46

标签: php download http-headers file-get-contents

我期待网页上找到的每个链接脚本都可以在我的电脑上下载一个html文件,询问我把文件放在哪里(在哪个文件夹中)...而是代码下载所有文件服务器上的文件夹(与php文件相同)。我甚至试图删除强制下载,但没有任何改变。

我做错了什么?提前谢谢。

这是我的代码:

$srcUrl= 'http://www.example.com/index.php';
$base= 'http://www.example.com/';

$html = file_get_contents($srcUrl);

$dom = new DOMDocument();
@$dom->loadHTML($html);

// grab all the on the page
$xpath = new DOMXPath($dom);

//finding the a tag
$hrefs = $xpath->evaluate("/html/body//a");

header('Content-disposition: attachment; filename=' . $filename);
header("Content-Type: application/force-download");
header('Content-type: text/html');


//Loop to display all the links and download
for ($i = 0; $i < $hrefs->length; $i++) {
    $href = $hrefs->item($i);
    $url = $href->getAttribute('href');

    //if real link
    if($url!='#') {

        //check if url is ok
        $www= filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED);

if ($www == false )
{
       //change the bad ones in absolute url;
        $url2 = make_absolute($url, $base);


        //Code to get the file...
        $data = file_get_contents($url2);

        //save as?
        $filename = $url;

        file_put_contents($filename, $data);

        //a time to rest
        sleep(5);
    }

    }
}

?> 

0 个答案:

没有答案