2009-04-08 53 views

回答

6

最簡單的一個是file_get_contents(),比較先進的方式是cURL。您可以使用file_put_contents()將數據存儲到您的硬盤。

+1

得是但請注意file_get_contents()。所有這些數據都保存在一個字符串中。 PHP的默認內存限制通常是相當低的(16M IIRC),所以如果他在共享主機上並且他下載的所述文件相當大......他會很難與此相關。 – 2009-04-08 03:55:10

+0

除非你有一個很好的共享主機,他會在PHP上爲你打開內存,或者你有自己的服務器。即使如此,它仍然是一個不切實際的想法。 – 2009-04-08 03:56:01

4

正常,則fopen功能遠程文件,所以你可以做以下規避內存限制(但它比的file_get_contents慢)

<?php 
$remote = fopen("http://www.example.com/file.zip", "rb"); 
$local = fopen("local_name_of_file.zip", 'w'); 
while (!feof($remote)) { 
    $content = fread($remote, 8192); 
    fwrite($local, $content); 
} 
fclose($local); 
fclose($remote); 
?> 

從這裏複製:http://www.php.net/fread

相關問題