L'éditeur php Yuzai vous présentera comment télécharger plusieurs images en PHP. Dans le développement de sites Web, il est souvent nécessaire de mettre en œuvre la fonction de téléchargement d'images par lots. Afin d'améliorer l'expérience utilisateur et l'efficacité, le téléchargement de plusieurs images est une exigence courante. PHP fournit une multitude de fonctions et de technologies pour implémenter cette fonction, notamment l'utilisation de formulaires, le traitement des fichiers téléchargés, le traitement de plusieurs fichiers en boucle, etc. Grâce aux conseils de cet article, vous apprendrez comment télécharger facilement plusieurs images en PHP pour ajouter des éléments plus interactifs et créatifs à votre site Web.
Pour rendre cela possible, nous devons spécifier l'action de formulaire dans notre fichier ou section HTML en fonction de la façon dont vous structurez votre base de code, puis utiliser une fonction intégrée pour gérer cette action.
Dans cet article, nous allons apprendrecomment télécharger plusieurs images en PHP, ce qui nous donne le contexte nécessaire pour spécifier les fichiers requis à partir d'une entrée de formulaire, traiter tous les fichiers sélectionnés par l'utilisateur et télécharger ou déplacer vers l'emplacement souhaité.
$_FILES
Lorsque l'utilisateur saisit une entrée dans le formulaire HTML, nous utilisons la méthode POST pour envoyer toute entrée (du texte au fichier) au côté serveur où réside notre application PHP.
<fORM method='post' action='' enctype='multipart/form-data'>
La partie enctype='multipart/form-data'
spécifie la méthode d'encodage des données du formulaire, qui est requise lorsque nous utilisons le téléchargement de fichiers dans le formulaire.
Pour le téléchargement de fichiers, nous devons saisir le type de fichier et spécifier le nom (peut être n'importe quel nom de votre choix) du fichier.
<input type="file" name="file" id="file">
Pour les téléchargements multiples de fichiers, nous avons toujours besoin du type d'entrée file, mais maintenant d'un nom spécifié différent file[]
et de l'attribut ajouté file[]
和添加的属性 multiple。 添加 []
multiple
[]
indique que le champ de saisie peut gérer plusieurs fichiers.
<input type="file" name="files[]" multiple/>
$_FILES
Côté serveur, la variable globale est un array associatif qui contient les fichiers téléchargés via la méthode Http POST, nous permettant de gérer les fichiers de manière appropriée. <?php $_FILES["files"]
Maintenant que nous comprenons les bases, nous devons télécharger plusieurs fichiers. Créons un formulaire PHP pour télécharger plusieurs images.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Multiple Image Upload</title> </head> <body> <form method="post" enctype="multipart/form-data" name="formUploadFile"> <label>Select image(s) to upload:</label> <input type="file" name="files[]" multiple="multiple" /> <input type="submit" value="Upload File" name="imgSubmit" /> </form> <?php if (isset($_POST["imgSubmit"])) { $Télécharger plusieurs images en PHPs = []; $uploadedFiles = []; $extension = array("jpeg", "jpg", "png"); $UploadFolder = "images"; $counter = 0; foreach ($_FILES["files"]["tmp_name"] as $key => $tmp_name) { $temp = $_FILES["files"]["tmp_name"][$key]; $name = $_FILES["files"]["name"][$key]; if (empty($temp)) { break; } $counter++; $UploadOk = true; $ext = pathinfo($name, PATHINFO_EXTENSION); if (in_array($ext, $extension) == false) { $UploadOk = false; array_push($Télécharger plusieurs images en PHPs, $name . " isn't an image."); } if ($UploadOk == true) { move_uploaded_file($temp, $UploadFolder . "/" . $name); array_push($uploadedFiles, $name); } } if ($counter > 0) { if (count($Télécharger plusieurs images en PHPs) > 0) { echo "<b>Errors:</b>"; echo "<br/><ul>"; foreach ($Télécharger plusieurs images en PHPs as $Télécharger plusieurs images en PHP) { echo "<li>" . $Télécharger plusieurs images en PHP . "</li>"; } echo "</ul><br/>"; } if (count($uploadedFiles) > 0) { echo "<b>Uploaded Files:</b>"; echo "<br/><ul>"; foreach ($uploadedFiles as $fileName) { echo "<li>" . $fileName . "</li>"; } echo "</ul><br/>"; echo count($uploadedFiles) . " iamge(s) are successfully uploaded."; } } else { echo "Please, Select image(s) to upload."; } } ?> </body> </html>
$_POST[]
变量是否使用 isset()
Vérifiez les paramètres de la fonction , initialisez les variables importantes et définissez l'extension requise pour le téléchargement de fichiers.
if (isset($_POST["imgSubmit"])) { $Télécharger plusieurs images en PHPs = []; $uploadedFiles = []; $extension = array("jpeg", "jpg", "png"); $UploadFolder = "images";
$_FILES[]
变量处理过的多个图像,然后使用 pathinfo()
检查扩展名,如果为真,我们将图像移动到指定文件夹 $UploadFolder 使用 move_uploaded_file()
Après cela, nous parcourons les multiples images qui ont été traitées via la variable $_FILES[]
, puis utilisons pathinfo()
pour vérifier l'extension et si c'est vrai, nous déplaçons l'image. Accédez au dossier spécifié $UploadFolder à l'aide de la fonction move_uploaded_file()
et transférez le nom de l'image vers la variable $uploadedFiles.
foreach ($_FILES["files"]["tmp_name"] as $key => $tmp_name) { $temp = $_FILES["files"]["tmp_name"][$key]; $name = $_FILES["files"]["name"][$key]; if (empty($temp)) { break; } $counter++; $UploadOk = true; $ext = pathinfo($name, PATHINFO_EXTENSION); if (in_array($ext, $extension) == false) { $UploadOk = false; array_push($Télécharger plusieurs images en PHPs, $name . " isn't an image."); } if ($UploadOk == true) { move_uploaded_file($temp, $UploadFolder . "/" . $name); array_push($uploadedFiles, $name); } }
Enfin, nous montrons les erreurs existantes et les fichiers téléchargés.
if ($counter > 0) { if (count($Télécharger plusieurs images en PHPs) > 0) { echo "<b>Errors:</b>"; echo "<br/><ul>"; foreach ($Télécharger plusieurs images en PHPs as $Télécharger plusieurs images en PHP) { echo "<li>" . $Télécharger plusieurs images en PHP . "</li>"; } echo "</ul><br/>"; } if (count($uploadedFiles) > 0) { echo "<b>Uploaded Files:</b>"; echo "<br/><ul>"; foreach ($uploadedFiles as $fileName) { echo "<li>" . $fileName . "</li>"; } echo "</ul><br/>"; echo count($uploadedFiles) . " image(s) are successfully uploaded."; } } else { echo "Please, Select image(s) to upload."; }
Fichier PHP servi au navigateur.
Sélectionnez une image et téléchargez l'image.
Ensuite, le fichier téléchargé s'affiche.
Photos téléchargées :
Si le fichier que vous sélectionnez n'est pas une image, une erreur apparaîtra.
🎜🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!