【问题标题】:PHP get names of multiple uploaded filesPHP获取多个上传文件的名称
【发布时间】:2013-04-10 19:02:57
【问题描述】:

您好,我正在尝试创建一个脚本来上传多个文件。 到目前为止一切正常,所有文件正在上传。

我现在的问题是我需要获取上传文件的每个文件名,以便将它们插入到数据库中。

这是我的html:

<form action="" method="post" enctype="multipart/form-data">

  <input type="file" name="image[]" multiple />
  <input type="submit" value="upload" />

这里是php:

if (!empty($_FILES['image'])) { 
    $files = $_FILES['image'];

    for($x = 0; $x < count($files['name']); $x++) {
        $name       = $files['name'][$x];
        $tmp_name   = $files['tmp_name'][$x]; 
        $size       = $files['size'][$x]; 

        if (move_uploaded_file($tmp_name, "../folder/" .$name)) {
            echo $name, ' <progress id="bar" value="100" max="100"> </progress> done <br />';
        }
    }
}

真的希望有人可以帮助我。 /JL

【问题讨论】:

    标签: php arrays string forms file-upload


    【解决方案1】:

    你的索引是倒着的。 $_FILES 是一个数组,每个上传的文件都有一个元素。这些元素中的每一个都是一个关联数组,其中包含该文件的信息。所以count($files['name']) 应该是count($files)$files['name'][$x] 应该是$files[$x]['name'](对于其他属性也是如此。您也可以使用foreach 循环:

    foreach ($_FILES as $file) {
      $name       = basename($file['name']);
      $tmp_name   = $file['tmp_name'];
      $size       = $file['size'];
    
      if (move_uploaded_file($tmp_name, "../folder/" .$name)) {
          echo $name, ' <progress id="bar" value="100" max="100"> </progress> done <br />';
      }
    }
    

    【讨论】:

      【解决方案2】:

      我认为glob() 功能可以提供帮助:

      <?php
          foreach(glob("*.jpg") as $picture)
          {
              echo $picture.'<br />';
          }
      ?>
      

      演示结果:

      pic1.jpg
      pic2.jpg
      pic3.jpg
      pic4.jpg
      ...
      

      请务必在必要时更改文件路径和扩展名。

      【讨论】:

      • 那行得通,但不完全是我想要的。但是谢谢。
      【解决方案3】:

      感谢您的帮助,我只需创建变量就可以使用它:

      $image_1 = (print_r($files['name'][0], true)); 
      $image_2 = (print_r($files['name'][1], true)); 
      $image_3 = (print_r($files['name'][2], true)); 
      

      【讨论】:

        猜你喜欢
        • 2015-01-28
        • 2018-04-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-08
        • 1970-01-01
        相关资源
        最近更新 更多