问题描述
我有一个处理图像上传的 foreach 循环。当我添加多个图像时,它们会被赋予一个文件名,该文件名由一个唯一的 ID 和一个使用 $filebase = uniqid() . '_' . time();
处理图像时,它们具有相同的图像名称,我不明白为什么 foreach 循环没有给出唯一的文件名?
我将 $temp
变量分配给了 foreach 循环的索引,代码如下:$temp = $_FILES['standard-upload-files']['tmp_name'][$index];
所以我不明白为什么它不增加新值?
图像已正确移动到目标文件夹(尽管名称相同),所以我知道这不是我的 HTML 表单或初始 foreach 循环的问题。
if(isset($_POST['submit-images'])) {
foreach($_FILES['standard-upload-files']['name'] as $index => $filename ) {
if($_FILES['standard-upload-files']['error'][$index] === 0 ) {
$temp = $_FILES['standard-upload-files']['tmp_name'][$index];
$filebase = uniqid() . '_' . time();
move_uploaded_file($temp,"images-download/{$filebase}");
}
} // main foreach
} // isset($_POST)