Comment télécharger un fichier via une URL en PHP ?

Réponses rédigées par Antoine
Dernière mise à jour : 2020-11-24 11:03:18
Question

Comment puis-je télécharger un fichier via son adresse Web, en PHP ?

Réponse

Pour télécharger un fichier via une URL, en PHP, vous pouvez utiliser 3 fonctions natives de PHP :

  • basename() qui permet de récupérer le nom et l'extension du fichier.
  • file_get_contents() qui télécharge et récupère le contenu du fichier.
  • file_put_contents() qui enregistre le fichier sur le serveur.

Exemple de script PHP pour télécharger un fichier :

<?php 
$url = 'https://www.exemple.com/exemple.zip'; 
$fichier_nom = basename($url);
$fichier_contenu = file_get_contents($url);
$dossier_enregistrement = "telechargement/";

if(file_put_contents($dossier_enregistrement . $fichier_nom, $fichier_contenu)) 
{ 
    echo "Fichier téléchargé avec succès"; 
} 
else 
{ 
    echo "Fichier non téléchargé"; 
} 
?> 

Remarque : Dans l'exemple ci-dessus on télécharge le fichier et on l'enregistre dans un dossier nommé telechargement ; le chemin d'accès vers le dossier est relatif.