한번에 여러개의 파일을 동시에 전송하는 것도 가능하다. 이때 PHP는 이 파일들에 대한 정보를 배열로 전달한다. 따라서 이런 경우에는 여러개를 선택하는 select나 checkbox 때처럼 HTML의 form의 아이템에 동일한 array명을 적어주어야 한다.:
참고: 여러 파일 전송 기능은 3.0.10부터 추가된 기능이다.
위의 폼이 전송될 때 $userfile, $userfile_name, $userfile_size의 배열이 전역 변수로 만들어진다. ($HTTP_POST_FILES(PHP3 에서는 $HTTP_POST_VARS)에도 만들어진다.) 이 배열들은 전송된 파일의 정보를 가지고 있고, 각 배열은 번호로 인덱스되어 있다.
예를 들어, 위의 예에서 /home/test/review.html와 /home/test/xwp.out 의 두 개의 파일을 전송했다면 $userfile_name[0] 에는 review.html이라는 값이, $userfile_name[1]에는 xwp.out이라는 값이 저장되게 된다. 동시에, $userfile_size[0] 에는 review.html의 파일 크기가 저장되는 식이 된다
$userfile['name'][0], $userfile['tmp_name'][0], $userfile['size'][0], and $userfile['type'][0] are also set.