$url = 'http://site.ru/folder/arch.zip';
//тут определяем расширение файла
//и помещяем его в переменную скажем $ext
//тут же можно задать уникальное имя для сохроняемого файла
//что бы не перезаписались файлы у вас на сервере переменная будет $filename
$tmp = file_get_contents($url);
file_put_contents('/path/to/folder/'.$filename.'.'.$ext, $tmp);