복수 파일은 input에서 다른 name을 사용해서 업로드 할 수 있습니다.
동시에 복수 파일을 업로드하고 배열로 조직화한 정보를 얻을 수 있습니다. 이를 위해서는, HTML 폼에 복수 선택이나 체크박스와 동일한 방식으로 동일한 이름의 배열형 구문을 갖추면 됩니다:
Example #1 복수 파일 전송하기
<form action="file-upload.php" method="post" enctype="multipart/form-data"> 이 파일들을 전송합니다:<br /> <input name="userfile[]" type="file" /><br /> <input name="userfile[]" type="file" /><br /> <input type="submit" value="파일 전송" /> </form>
위 폼을 전송하면, 배열 $_FILES['userfile'], $_FILES['userfile']['name'], $_FILES['userfile']['size']가 초기화됩니다. (버전 4.1.0 이전에는 $HTTP_POST_FILES) register_globals가 on이라면, 전송된 파일들에 대한 전역 변수도 초기화됩니다. 이 각각에 대해서 전송된 파일에 따른 숫자로 정렬된 배열을 가지게 됩니다.
예를 들어, /home/test/review.html와 /home/test/xwp.out가 전송되었다고 합시다. 이 경우에, $_FILES['userfile']['name'][0]의 값은 review.html이고, $_FILES['userfile']['name'][1]의 값은 xwp.out가 됩니다. 마찬가지로, $_FILES['userfile']['size'][0]는 review.html의 크기를 가지게 되며, 나머지도 마찬가지입니다.
$_FILES['userfile']['name'][0], $_FILES['userfile']['tmp_name'][0], $_FILES['userfile']['size'][0], $_FILES['userfile']['type'][0]이 설정됩니다.