我正在嘗試使用PHP從FTP URL下載文件,該文件看起來像ftp://username:[email protected]/file.zip
。 該URL很好,因爲我可以將該文件粘貼到任何瀏覽器中。 Fopen支持這種文件流式傳輸,在這裏看到它:fopen。 這裏是我的代碼:通過FTP打開文件URL
[...]
$destination_folder = '../importmlsupload/';
$url = "ftp://user:[email protected]/file.zip";
$newfname = $destination_folder . basename($url);
$file = fopen($url, "rb");
if ($file) {
$newf = fopen($newfname, "wb");
while(!feof($file)) {
$s = fread($file, 1024);
fwrite($newf, $s, 1024);
}
}
if (!empty($file)) {
fclose($file);
}
if (!empty($newf)) {
fclose($newf);
}
問題是,我得到一個下載文件ampty。我做了一些驗證,並得到了以下結果:文件已在服務器上成功創建,但while循環(!feof(...))在第一步之後結束。所以它讀取1024個字節,並從循環中退出。換句話說,feof在第一個1024字節或讀取後返回true。
使用HTTP URL TRYING成績成功導入,但FTP URL不
難道我做錯了什麼?
謝謝我欣賞,如果我不會爲這一個簡單的解決方案,那麼我會使用它們。 – Ervin 2013-02-21 10:32:51