首页 文章

乘以文件上传 - 输入由foreach处理的字段名称和文件信息

提问于
浏览
1

我试着更具体,第一次尝试不是那样 .

我想用php上传3张图片 . 我需要所有文件数据(名称,大小,tmp_name,类型)以及表单提交后当前输入字段的名称 .

<input type="file" name="thisisaname"...>
<input type="file" name="thisisanothername"...>
<input type="file" name="thethirdname"...>

我需要在foreach中使用ImageInputname:

foreach($_FILES as $file)
{
$ImageName      = $file['name'];
$ImageSize      = $file['size'];
$TempSrc        = $file['tmp_name'];
$ImageType      = $file['type'];
$ImageInputName = ???
...
}

获取输入名称的最简单方法是什么?

1 回答

  • 0

    您可以使用此代码在php上传多个文件上传 .

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    </head>
    <body>
    <form action="" 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
            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>";
                    }
                }
    
            }
    ?>
    

相关问题