服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|JavaScript|易语言|

服务器之家 - 编程语言 - PHP教程 - php 多文件上传的实现实例

php 多文件上传的实现实例

2021-03-15 16:25PHP教程网 PHP教程

在php中,实现文件上传时一个很简单的事情,但是如果我们要一次上传多个文件,那又该如何编写代码呢?,需要的朋友可以参考下

首先向大家讲解一下实现的方法。

要实现多文件上传,我们可以在form表单中添加多个input file域,然后将这些input file的name属性设置为相同的名称且使用数组的形式命名,例如filename[]。至于文件上传的php代码和单个文件上传是一样的道理。

下面看一个多文件上传的实例:

html文件example.html

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<form action="my_parser.php" method="post" enctype="multipart/form-data">
 <p><input type="file" name="file_array[]"></p>
 <p><input type="file" name="file_array[]"></p>
 <p><input type="file" name="file_array[]"></p>
 <input type="submit" value="Upload all files">
</form>
</body>
</html>

php文件my_parser.php

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
if(isset($_FILES['file_array'])){
  $name_array = $_FILES['file_array']['name'];
  $tmp_name_array = $_FILES['file_array']['tmp_name'];
  $type_array = $_FILES['file_array']['type'];
  $size_array = $_FILES['file_array']['size'];
  $error_array = $_FILES['file_array']['error'];
  for($i = 0; $i < count($tmp_name_array); $i++){
    if(move_uploaded_file($tmp_name_array[$i], "test_uploads/".$name_array[$i])){
      echo $name_array[$i]." upload is complete<br>";
    } else {
      echo "move_uploaded_file function failed for ".$name_array[$i]."<br>";
    }
  }
}
?>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

延伸 · 阅读

精彩推荐