Podríamos obtener el contenido de una URL, local o externa y descargarlo con curl, aunque vamos a ver cómo se haría con file_get_contents, que es la función específica de PHP para ello.
Se haría así:
file_get_contents('http://url.com/path/to/download', true);
Con el segundo parámetro booleano, le indicamos el valor de la constante FILE_USE_INCLUDE_PATH. Lo que hace ese parámetro está descrito en esta respuesta aceptada de stack overflow: