学科分类
目录
PHP基础

多文件上传

多文件上传是指一次性上传多个文件。多文件上传有两种不同的需求,一种是在页面中,有多处文件上传,另一种是一个上传按钮,需要上传多个文件。其中,第1种方式上传的文件之间没有直接的关联,本质上依然是单文件上传。第2种上传的文件属于同一类文件,示例代码如下。

 <form action="表单提交地址" method="post" enctype="multipart/form-data">
   个人相册:
   <input type="file" name="photo[]" />
   <input type="file" name="photo[]" />
   <input type="file" name="photo[]" />
   <input type="submit" value="上传" />
 </form>

在上述代码中,文件上传按钮的name属性采用数组的命名方式,表示上传多个文件。

在PHP处理多文件上传时,使用$_FILES接收上传文件的信息,利用循环处理文件信息,示例代码如下。

$len = count($_FILES['photo']['name']);
for ($i = 0; $i < $len; $i++) {
    $file = [
        'name' => $_FILES['photo']['name'][$i];
        'type' => $_FILES['photo']['type'][$i];
        'tmp_name' => $_FILES['photo']['tmp_name'][$i];
        'error' => $_FILES['photo']['error'][$i];
        'size' => $_FILES['photo']['size'][$i];
    ];
}

在上述代码中,通过循环获取上传的文件信息,在for循环中可以直接调用move_uploaded_file()函数将临时文件保存到指定目录中。

点击此处
隐藏目录