检查网址是否提供可下载的文件?

时间:2016-05-20 09:23:51

标签: php file csv url file-get-contents

我目前正在开发一些联盟供稿,其中大部分以原始.csv格式提供。我正在使用file_get_contents生成.csv文件以及fputcsv()。

不幸的是,我的联盟网址之间还有一个链接,当您访问浏览器中的网址时,会立即下载csv文件。这不需要进一步的工作,因为它是一个完美的.csv文件。

由于我只是把我的网址放在一个数组中,我需要检查文件作为下载链接提供的时间。我如何检查这一点,以便我可以跳过所有默认的.csv逻辑,而不是弄乱这个文件?

我不知道要搜索什么,因为我不知道当文件直接下载而不是看到原始csv数据时到底发生了什么。希望有人可以帮助我。

1 个答案:

答案 0 :(得分:1)

您可以使用CURL检查文件是否可下载:

<强> PHP

    function checkDownloadable($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_NOBODY, 1);
    curl_setopt($ch, CURLOPT_FAILONERROR, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    if(curl_exec($ch) !== FALSE) {
        return true;
    }
    else {
        return false;
    }
}