重命名多个上传图像

时间:2018-02-05 05:20:04

标签: php

当我将多个图像重命名保存到

a362420af756a17c107702fd5fbf7c94.jpg

a362420af756a17c107702fd5fbf7c94.jpg8f056d60fadf1619c2e63dbb5788ac3a.png

重复第一个如何解决这个问题

我想要

a362420af756a17c107702fd5fbf7c94.jpg

8f056d60fadf1619c2e63dbb5788ac3a.png

代码

$target_path = ENV::$pathupload;
$img_tobaco = array_filter($_FILES['imgs']['name']);
$countFiles = count(array_filter($img_tobaco));

for($i = 0; $i <$countFiles; $i++){

  $file_name = $img_tobaco[$i];
  $validextensions = array("jpeg", "jpg", "png");
  $ext = explode('.', basename($img_tobaco[$i]));
  $file_extension = end($ext);
  $img_name = md5(uniqid()).".".$ext[count($ext) - 1];
  $target_path = $target_path.md5(uniqid()).
  ".".$ext[count($ext) - 1]; //set the target path with a new name of image
  $j = $j + 1; 
  if (in_array($file_extension, $validextensions)) {
    if (move_uploaded_file($_FILES['imgs']['tmp_name'][$i], $target_path)) { //if file moved to uploads folder
      echo $img_name."<br>";
    }else{
    }
  }

} 

更新

我把$ img_name =&#34;&#34 ;; inloops

当我回显$ img_name它打印

a362420af756a17c107702fd5fbf7c94.jpg

8f056d60fadf1619c2e63dbb5788ac3a.png

但在我的文件夹名称中仍然看起来像这样

a362420af756a17c107702fd5fbf7c94.jpg

    a362420af756a17c107702fd5fbf7c94.jpg8f056d60fadf1619c2e63dbb5788ac3a.png

这是我的HTML

<form action="" method="post" enctype="multipart/form-data">
    <div class="row input-with-icon data-img">
      <input type="file" id="send2" accept="image/*" class="form-control form-default form-image" placeholder="img" name="imgs[]">
      <label for="send-3" class="label-image">img</label>
      <i class="fa fa-picture-o" aria-hidden="true"></i>
    </div>
    <div class="row input-with-icon data-img">
      <input type="file" id="send2" accept="image/*" class="form-control form-default form-image" placeholder="img" name="imgs[]">
      <label for="send-3" class="label-image">img</label>
      <i class="fa fa-picture-o" aria-hidden="true"></i>
    </div>
    <button type="submit"></button>
<form

1 个答案:

答案 0 :(得分:0)

尝试通过将每个区间初始化为空字符串

来重置$img_name的值
$img_name = "";
$img_name = md5(uniqid()).".".$ext[count($ext) - 1];