Télécharger plusieurs fichiers simultanément
  
   Le téléchargement de plusieurs fichiers est possible
   en utilisant des noms différents dans l'attribut
   name de la balise input.
  
  
   Il est aussi possible de télécharger plusieurs fichiers simultanément
   et d'obtenir les informations sous forme de tableau. Pour cela, vous
   devez utiliser la syntaxe de tableau dans les noms de balises
   HTML, comme vous l'avez fait avec les sélections multiples
   et les boîtes à cocher.
  
  
   
    Exemple #1 Télécharger plusieurs fichiers simultanément
    
<form action="file-upload.php" method="post" enctype="multipart/form-data">
  Envoyez plusieurs fichiers : <br />
  <input name="userfile[]" type="file" /><br />
  <input name="userfile[]" type="file" /><br />
  <input type="submit" value="Envoyer les fichiers" />
</form>
 
    
  
  
   Lorsque le formulaire ci-dessus a été envoyé, les
   tableaux $_FILES['userfile'],
   $_FILES['userfile']['name'], et
   $_FILES['userfile']['size'] seront initialisés.
  
  
   Par exemple, supposons que les fichiers
   /home/test/review.html et
   /home/test/xwp.out ont été téléchargés. Dans ce cas,
   $_FILES['userfile']['name'][0]
   contient review.html et
   $_FILES['userfile']['name'][1] contient
   xwp.out. Similairement,
   $_FILES['userfile']['size'][0] va contenir
   la taille du fichier review.html, etc.
  
  
   $_FILES['userfile']['name'][0],
   $_FILES['userfile']['tmp_name'][0],
   $_FILES['userfile']['size'][0] et
   $_FILES['userfile']['type'][0] sont aussi
   créées.
  
  Avertissement
   
    Le paramètre
    max_file_uploads limite le nombre
    de fichiers qui peuvent être envoyés en une requête. Vous devrez vérifier que
    votre formulaire ne tente pas d'envoyer plus de fichiers dans la requête que ne
    le tolère cette limite.
   
   
  
   
    Exemple #2 Téléverser un dossier entier
    
     Dans les champs de téléversement de fichier HTML, il est possible de
     téléverser un dossier entier avec l'attribut webkitdirectory.
     Cette fonctionnalité est supportée dans la plupart des navigateurs modernes.
    
     Avec l'information full_path, il est possible de
     stocker les chemins relatifs ou reconstruire la même hiérarchie de dossier sur le dossier.
    
<form action="file-upload.php" method="post" enctype="multipart/form-data">
  Send this directory:<br />
  <input name="userfile[]" type="file" webkitdirectory multiple />
  <input type="submit" value="Send files" />
</form>
 
    
   Avertissement
    
     L'attribut webkitdirectory n'est pas standard et n'est
     pas actuellement en cours de standardisation.
     Ceci n'est pas à utiliser sur des sites de production tournés vers le Web :
     ça ne fonctionnera pas pour tous les utilisateurs.
     Il peut y avoir de grandes incompatibilités parmi les implémentations
     et le comportement peut changer dans le futur.
    
    
     PHP analyse uniquement les informations des chemins relatifs soumit par
     le navigateur/user-agent et transmet les informations dans le tableau
     $_FILES.
     Il n'y a aucune garanties que les valeurs dans le tableau
     full_path contienne une vraie structure de dossier
     et l'application PHP ne doit pas faire confiance à cette information.