Enviando múltiplos arquivos
   
    Múltiplos arquivos podem ser enviados usando diferentes
    nomes (name) para entradas (input).
   
   
    Também é possível carregar vários arquivos simultaneamente e
    ter a informação automaticamente organizada em arrays. Para
    isso, é necessário usar a mesma sintaxe das arrays submetidas pelo
    formulário HTML que você usa para múltiplos selects e checkboxes:
   
   
    
     Exemplo #1 Carregando múltiplos arquivos
     
<form action="file-upload.php" method="post" enctype="multipart/form-data">
  Envie esses arquivos:<br />
  <input name="userfile[]" type="file" /><br />
  <input name="userfile[]" type="file" /><br />
  <input type="submit" value="Enviar arquivos" />
</form>
 
     
   
   
    Quando o formulário acima é submetido, os arrays
    $_FILES['userfile'],
    $_FILES['userfile']['name'], e
    $_FILES['userfile']['size'] serão
    inicializados.
   
   
    Por exemplo, suponha os nomes dos arquivos
    /home/test/review.html e
    /home/test/xwp.out. Neste caso,
    $_FILES['userfile']['name'][0]
    deve conter o valor review.html, e
    $_FILES['userfile']['name'][1]
    deve conter o valor xwp.out. Similarmente,
    $_FILES['userfile']['size'][0] deve
    conter o tamanho do arquivo review.html, e assim por diante.
   
   
    $_FILES['userfile']['name'][0],
    $_FILES['userfile']['tmp_name'][0],
    $_FILES['userfile']['size'][0], e
    $_FILES['userfile']['type'][0]
    também são definidas.
   
   Aviso
    
     O parâmetro
     max_file_uploads
     atua como um limite no número de arquivos que podem ser
     enviados em uma única requisição. Você precisa ter certeza que
     seu formulário não tentará enviar mais arquivos que o limite definido.
    
    
   
    
     Exemplo #2 Carregando um diretório inteiro
     
      Nos campos de carregamento de arquivos HTML, é possível carregar um diretório inteiro com o atributo webkitdirectory.
      Esse recurso é suportado na maioria dos navegadores modernos.
     
      Com a informação full_path, é possível armazenar os caminhos relativos,
      ou reconstruir o mesmo diretório no servidor.
     
<form action="file-upload.php" method="post" enctype="multipart/form-data">
  Enviar este diretório:<br />
  <input name="userfile[]" type="file" webkitdirectory multiple />
  <input type="submit" value="Enviar arquivos" />
</form>
 
     
    Aviso
     
      O atributo webkitdirectory não é padronizado e não está no roteiro de padronização.
      Não utilize-o em sites em produção voltados para a Web: ele não funcionará para todos os usuários.
      Também podem haver grandes incompatibilidades entre implementações e o comportamento pode mudar no futuro.
     
     
      O PHP analisa apenas a informação de caminho relativo enviada pelo navegador/user-agent,
      e passa essa informação para o array $_FILES.
      Não há garantia de que os valores no array full_path contenham uma estrutura de diretórios real,
      e a aplicação PHP não deve confiar nesta informação.