Il existe de nombreuses façons de télécharger des fichiers en PHP, et vous pouvez choisir la méthode la plus appropriée en fonction des différents besoins. Les méthodes couramment utilisées incluent : l'utilisation de la fonction readfile() pour télécharger directement, l'utilisation de la fonction header() pour forcer le téléchargement et l'utilisation de la bibliothèque cURL pour télécharger des fichiers distants.
Le moyen le plus simple de télécharger est d'utiliser la fonction readfile() intégrée à PHP :
<?php
$file = 'file.txt';
if (file_exists($file)) {
readfile($file);
} else {
echo 'File not found.';
}
?>Si vous souhaitez que le navigateur télécharge le fichier au lieu de l'ouvrir directement, vous pouvez définir l'en-tête HTTP via header() :
<?php
$file = 'file.txt';
if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=' . basename($file));
header('Content-Length: ' . filesize($file));
readfile($file);
} else {
echo 'File not found.';
}
?>Lorsque vous devez télécharger des fichiers distants ou effectuer des opérations plus complexes, vous pouvez utiliser la bibliothèque cURL :
<?php
$url = 'https://example.com/file.txt';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);
file_put_contents('file.txt', $data);
?>Ci-dessus figurent plusieurs méthodes courantes pour implémenter le téléchargement de fichiers en PHP. Qu'il s'agisse de téléchargement de fichiers locaux ou d'acquisition de fichiers à distance, vous pouvez vous référer à ces exemples pour l'implémenter facilement.