Dans le développement Web, le téléchargement de fichiers est une fonctionnalité commune et importante. PHP réalise la réception et la gestion des fichiers via $ _Files Global Variable. Le processus de téléchargement comprend généralement le client soumettant le fichier, le serveur l'enregistre dans un répertoire temporaire, vérifiant la légitimité du fichier et déplace enfin le fichier vers le répertoire spécifié pour terminer le téléchargement.
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="Télécharger le fichier">
</form>
<?php
$fileName = $_FILES['file']['name'];
$fileSize = $_FILES['file']['size'];
$fileTmp = $_FILES['file']['tmp_name'];
$fileType = $_FILES['file']['type'];
?>
<?php
$allowedTypes = ['image/jpeg', 'image/png']; // Types de fichiers autorisés à télécharger
$maxSize = 2 * 1024 * 1024; // 最大允许Télécharger le fichier大小,2MB
if (in_array($fileType, $allowedTypes) && $fileSize <= $maxSize) {
$destination = 'uploads/' . $fileName;
move_uploaded_file($fileTmp, $destination);
echo 'Télécharger le fichier avec succès!';
} else {
echo 'Le téléchargement de ce type de taille de fichier ou de fichier dépasse la limite!';
}
?>
Le téléchargement de fichiers est une autre fonctionnalité clé dans les applications Web. En envoyant une demande, le serveur lit le fichier et transfère le fichier au client via la réponse HTTP. La définition d'un en-tête HTTP raisonnable garantit que le fichier peut être téléchargé et enregistré correctement.
<span class="fun"><a href = "download.php? file = filename"> Télécharger le fichier </a></span>
<?php
$filePath = 'path/to/file/' . $_GET['file'];
if (file_exists($filePath)) {
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=' . basename($filePath));
header('Content-Length: ' . filesize($filePath));
readfile($filePath);
} else {
echo 'Le fichier n'existe pas!';
}
?>
Grâce à un type de fichier raisonnable et à une vérification de la taille, combinée à un mouvement de fichier correct et à des paramètres de tête de téléchargement, la sécurité et la stabilité du téléchargement et du téléchargement de fichiers peuvent être effectivement garanties. J'espère que l'explication de cet article sera utile aux développeurs de PHP pour comprendre les principes de traitement des fichiers sous-jacents et peut être appliqué de manière flexible dans des projets réels.