E' possibile caricare più file contemporaneamente e avere le informazioni organizzate automaticamente in array. Per questo è necessario utilizzare la medesima sintassi di invio di array da form HTML che è utilizzata con select e checkbox multipli:
Nota: Il supporto per il caricamento di file multipli è presente dalla versione 3.0.10.
Quando la form è inviata, gli array $userfile, $userfile_name, e $userfile_size sono costruiti con visibilità globale (così come in $HTTP_POST_FILES ($HTTP_POST_VARS in PHP 3)). Ognuno di questi è un array indicizzato numericamente con i valori relativi ai diversi file caricati.
Per esempio, si supponga che i nomi di file /home/test/review.html e /home/test/xwp.out siano inviati. In questo caso, $userfile_name[0] conterrebbe il valore review.html, e $userfile_name[1] conterrebbe il valore xwp.out. Analogamente, $userfile_size[0] conterrebbe la dimensione di review.html, e così via.
Anche $userfile['name'][0], $userfile['tmp_name'][0], $userfile['size'][0], e $userfile['type'][0] sono impostati.