Meerdere bestanden uploaden

Het is mogelijk meerdere bestanden tegelijk te uploaden. Deze informatie kun je ge-ordend in arrays verkrijgen. Om dit mogelijk te maken moet je dezelfde syntax gebruiken als bij een HTML form met meerdere selects en/of checkboxes.

Opmerking: Ondersteuning voor meerdere file uploads werd toegevoegd in versie 3.0.10.

Voorbeeld 19-3. Meerdere bestanden uploaden


<form action="file-upload.php" method="post" enctype="multipart/form-data">
  Send these files:<br>
  <input name="userfile[]" type="file"><br>
  <input name="userfile[]" type="file"><br>
  <input type="submit" value="Send files">
</form>
     

Als het bovenstaande form verstuurd wordt, worden de globale arrays $userfile, $userfile_name and $userfile_size aangemaakt in de globale scope (ook $HTTP_POST_FILES (PHP 4) en $HTTP_POST_VARS (PHP 3) worden aangemaakt.) Deze arrays zijn numeriek geindexeerde arrays met de juiste waarden voor de ge-uploade bestanden.

Bijvoorbeeld, stel dat de bestanden /home/test/review.html en /home/test/xwp.out ge-upload worden. In dit geval zou $userfile_name[0] de waarde review.html en $userfile_name[1] de waarde xwp.out bevatten. Navolgend zou $userfile_size[0] de grootte van het bestand review.html's bevatten, enzovoort.

$userfile['name'][0], $userfile['tmp_name'][0], $userfile['size'][0] en $userfile['type'][0] zijn ook beschikbaar.