Altro
Scaricare il file sul server dall'URL
Beh, questo sembra abbastanza semplice, e lo è. Tutto quello che dovete fare per scaricare un file sul vostro server è:
file_put_contents("Tmpfile.zip", file_get_contents("http://someurl/file.zip"));
Solo che c'è un problema. Cosa succede se hai un file grande, come 100mb. Allora, si esaurirà la memoria e non si potrà scaricare il file.
Quello che voglio è un modo per scrivere il file sul disco mentre lo sto scaricando. In questo modo, posso scaricare file più grandi, senza incorrere in problemi di memoria.
321
3
Da PHP 5.1.0, file_put_contents()` supporta la scrittura pezzo per pezzo passando uno stream-handle come parametro
$data
:Dal manuale:
Se data [che è il secondo argomento] è una risorsa di flusso, il buffer rimanente di quel flusso sarà copiato nel file specificato. Questo è simile all'uso di
(Grazie Hakre).
Prova a usare cURL
Non sono sicuro, ma credo che con l'opzione
CURLOPT_FILE
scriva mentre estrae i dati, cioè non bufferizzati.