-1

我目前正在运行此脚本以从我的智能手机应用程序上传录音,并且效果很好。但是有些用户没有完全填写他们的信息,并且上传的名称为“null”我希望他们“如果上传名称 = null,那么”按时间顺序重命名它们:null1、null2、null3 等

但是,如果它们当前在文件夹中没有具有匹配名称的文件,则保留上传的名称。例如,可能有 john smith 和 john smith1,但没有 Jane Smith,因此请保留名称。这是我的代码

<?php
print_r($_FILES);
move_uploaded_file($_FILES["file"]["tmp_name"], "mp3/".$_FILES["file"]["name"]);
?>
4

1 回答 1

0

这应该做你想要的:

// Get the file name as an array
$file_name = explode('.', 'mp3/' . $_FILES['file']['name']);

// Get the extension
$extension = array_pop($file_name);

// Get the file name as a string
$file_name = implode('.', $file_name);

// Set the initial suffix
$i = 0;

// Get the valid path
while (is_file($path = $file_name . ($i ?: '') . '.' . $extension))
{
  ++$i;
}

// Throw an exception if the file could not be moved
if (!move_uploaded_file($_FILES['file']['tmp_name'], $path))
{
  throw new Exception('There was an error uploading the file.');
}
于 2013-03-14T17:16:09.993 回答