¿Cómo descargar archivos de un servidor externo con código en PHP?

PHP proporciona muchas variables o funciones incorporadas para realizar este tipo de operación. Uno de ellos es file_get_contents para descargar los archivos del servidor externo usando PHP.

Parámetros de la función file_get_contents():

  • $ruta: Declara la ruta del archivo que vamos a buscar.
  • $include_path: este es un parámetro binario, establezca 1 para encontrar el archivo en la ruta incluida.
  • $contexto: Especifica cómo cambiamos los modos del identificador de archivo.
  • $start: Es la línea de inicio para buscar.
  • $max_length: Especifica la longitud máxima del archivo.

En esto, vamos a entender cómo descargar los archivos y cómo descargar el contenido de la página en particular desde el servidor externo. 

Ejemplo 1: En este, vemos cómo descargar el archivo usando el método file_get_contents() .

PHP

<?php
    
    $URL = 
 'https://media.geeksforgeeks.org/wp-content/cdn-uploads/20190710102234/download3.png';
        
    $file = basename($URL);
      
    $success = file_put_contents($file, file_get_contents($URL));
      
    if ($success) {
        echo "File downloaded successfully from the server ";
    }
    else {
        echo "File downloading failed.";
    }
?>

Producción:

Ejemplo 2: En este, entendemos cómo descargar el contenido del servidor externo. Establecemos la URL en la variable en la que queremos obtener el contenido. Abrimos un archivo en modo de escritura y luego buscamos el contenido usando el método cURL y almacenamos los datos en un archivo.

PHP

<?php
  
      $url = 'https://www.geeksforgeeks.org/contribute/';
      $destination_file = "gfg.html";
  
      $fp = fopen($destination_file, "w+");
  
      $ch = curl_init();
        
    curl_setopt_array($ch, array(
          CURLOPT_URL=>$url, CURLOPT_FILE=>$fp ));
  
      $res = curl_exec($ch);
  
      echo "File is downloaded ..!!";
      curl_close($ch);
      fclose($fp);
?>

Producción:

Ejemplo 3: en esto, estamos usando cURL , que también se denomina URL del cliente. Inicializamos la URL del archivo y la almacenamos en la variable. Especificamos el nombre del archivo para almacenar el archivo, luego abrimos el archivo en modo w+. Al usar cURL, primero transferimos el archivo y luego ejecutamos la sesión. Después de descargar el archivo, cerramos la sesión y el archivo.

PHP

<?php
  
      $file_url = 
'https://media.geeksforgeeks.org/wp-content/cdn-uploads/20190710102234/download3.png';
  
      $destination_path = "download3.png";
      $fp = fopen($destination_path, "w+");               
  
      $ch = curl_init($file_url);
      curl_setopt($ch, CURLOPT_FILE, $fp);
      curl_exec($ch);
  
      $st_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
      curl_close($ch);
      fclose($fp);
  
      if($st_code == 200)
          echo 'File downloaded successfully from the server';
      else
          echo 'Error occur';
?>

Producción:

Publicación traducida automáticamente

Artículo escrito por rohanmittal1366 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *