PHP Portal » PHP Handbuch » Upload mehrerer Dateien

Werbung

Upload mehrerer Dateien


Mehrere Dateien können hochgeladen werden, indem Sie verschiedene Namen name für input verwenden.

Es ist ebenfalls möglich, mehrere Dateien simultan hochzuladen, und die Informationen automatisch in Arrays zu erhalten. Um dies zu tun, verwenden Sie in dem HTML Formular die gleiche Array-Sende-Syntax wie bei Auswahllisten mit Mehrfachauswahl und Checkboxen:

Hinweis: Die Unterstützung für den Upload von mehreren Dateien wurde in PHP 3.0.10 hinzugefügt.

PHP Code
1
2
3
4
5
6
<form action="file-upload.php" method="POST" enctype="multipart/form-data"> Send these files: <input name="userfile[]" type="file"> <input name="userfile[]" type="file"> <input type="submit" value="Send files"> </form>

Wenn das obige Formular übermittelt ist, werden die Arrays $_FILES['userfile'], $_FILES['userfile']['name'] und $_FILES['userfile']['size'] initialisiert (wie auch in $HTTP_POST_FILES vor PHP Version 4.1.0.). Ist register_globals aktiviert, werden auch globale Variablen für die hochgeladenen Dateien initialisiert. Jedes von ihnen ist ein numerisch indiziertes Array mit den entsprechenden Werten für die hochgeladenen Dateien.

Nehmen wir zum Beispiel an, dass die Dateinamen /home/test/review.html und /home/test/xwp.out übermittelt wurden. In diesem Fall würde $_FILES['userfile']['name'][0] review.html enthalten, und $_FILES['userfile']['name'][1] hätte den Wert xwp.out. Genauso würde $_FILES['userfile']['size'][0] die Dateigröße von review.html enthalten, usw.

$_FILES['userfile']['name'][0], $_FILES['userfile']['tmp_name'][0], $_FILES['userfile']['size'][0] und $_FILES['userfile']['type'][0] sind ebenfalls gesetzt.