如何使用php下载文件,提供路径已知

时间:2012-03-30 04:33:24

标签: php curl

我要从网络资源下载与数据相关的pdf文件。我知道文件的完整路径。我已经尝试过curl但是花了很长时间并写了一个0字节的文件。

$ch = curl_init ($url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$rawdata = curl_exec($ch);
curl_close ($ch);
if(file_exists($fullpath)){
    unlink($fullpath);
}
$fp = fopen($fullpath,'x');
fwrite($fp, $rawdata);
fclose($fp);

2 个答案:

答案 0 :(得分:1)

$ch = curl_init("http://www.example.com/");
$fp = fopen("example_homepage.txt", "w");

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);

curl_exec($ch);
curl_close($ch);
fclose($fp);

http://www.php.net/manual/en/curl.examples-basic.php

或者这个(如果你的PHP conf中设置了fopen包装器):

$file = 'http://somehosted.com/file.pdf'; // URL to the file

$contents = file_get_contents($file); // read the remote file

touch('somelocal.pdf'); // create a local EMPTY copy

file_put_contents('somelocal.pdf', $contents); // put the fetchted data into the newly created file

// done :)

这个可能最适合你:http://www.jonasjohn.de/snippets/php/curl-example.htm

答案 1 :(得分:0)

很难说没有看到你的代码看起来像什么以及你可能出错的地方,但是看看这个,看看有什么东西可以突显你可能忽略的东西:

http://davidwalsh.name/download-urls-content-php-curl