Ahhh, bueno. Con GatorV como interprete creo que ahora entendí.
Para lo que querés hacer te alcanza con usar conjuntamente las funciones
file_put_contents y
file_get_contents, por ejemplo:
Código PHP:
file_put_contents(nuevo_archivo, file_get_contents(URL_del_archivo));
o bien usar la librería CURL.
Eso va a ser mucho más fácil que abrir un socket.