我是PHP的新手,我正在学习。
我制作了一个基本脚本,您可以将图像上传到服务器上的导演。我希望图像名称最后得到一个数字,这样名称就不会重复了。
这是我在脚本中添加1的脚本(我对“for loops”非常不满):
for(x=0; $imageName => 50000; x++){
$imageFolderName = $imageName.$x;
}
如果我完全错了,请告诉我。
答案 0 :(得分:2)
添加到Niet的答案,您可以对文件夹中的所有文件执行foreach循环,并在文件名前加上一个数字,如下所示:
<?
$directory = 'directory_name';
$files = array_diff(scandir($directory), array('.', '..'));
$count = 0;
foreach($files as $file)
{
$count++;
rename($file, $count.'-'.$file);
}
?>
或者,您可以将文件重命名为上传时间戳,并使用rand()函数将一些随机字符添加到文件中:
<?
$uploaded_name = 'generic-image.jpeg';
$new_name = time().rand(0, 999).$uploaded_name;
?>
您需要在重命名之前和之后处理和移动上传的文件,但是您可以获得如何使用它的一般要点。
答案 1 :(得分:1)
这是避免循环的潜在技巧:
$existingfiles = count(glob("files/*"));
// this assumes you are saving in a directory called files!
$finalName = $imageName.$existingfiles;