在PHP中将文件从服务器移动到服务器的最佳方法

时间:2011-09-23 22:21:36

标签: php download

我的网站存放了一些xml文件,我想下载到我们的服务器,我们没有ftp连接,所以我们可以通过http下载。我总是使用file(url)有没有更好的方法通过php下载文件

2 个答案:

答案 0 :(得分:2)

如果您可以通过http访问它们,file()(将文件读入数组)和file_get_contents()(将内容读入字符串)完全没问题,前提是包装器已启用。< / p>

答案 1 :(得分:2)

使用CURL也是一个不错的选择:

// create a new CURL resource 
$ch = curl_init(); 

// set URL and other appropriate options 
curl_setopt($ch, CURLOPT_URL, "http://www.server.com/file.zip"); 
curl_setopt($ch, CURLOPT_HEADER, false); 
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 

set_time_limit(300); # 5 minutes for PHP 
curl_setopt($ch, CURLOPT_TIMEOUT, 300); # and also for CURL 

$outfile = fopen('/mysite/file.zip', 'wb'); 
curl_setopt($ch, CURLOPT_FILE, $outfile); 

// grab file from URL 
curl_exec($ch); 
fclose($outfile); 

// close CURL resource, and free up system resources 
curl_close($ch);