Php 重命名多图像上载

Php 重命名多图像上载,php,Php,这是我的问题,当有人上传图片时,我需要重命名图片,我想使用日期和时间并创建$datatime值,但我不知道如何使其工作,有人能告诉我如何做吗?非常感谢您的帮助。。。非常感谢 <?php if(isset($_POST['action'])=='uploadfiles') { $time = time(); $date = date('Y-m-d'); $datetime = "$time" . "$date"; $upload_directory ='uploads/'; $co

这是我的问题,当有人上传图片时,我需要重命名图片,我想使用日期和时间并创建$datatime值,但我不知道如何使其工作,有人能告诉我如何做吗?非常感谢您的帮助。。。非常感谢

<?php if(isset($_POST['action'])=='uploadfiles') {
$time = time();
$date = date('Y-m-d');
$datetime = "$time" . "$date";

$upload_directory   ='uploads/';  
$count_data         =count($_FILES['data']) ;
$upload             = $_FILES['data']['name'][$x].',';  

for($x=0;$x<$count_data;$x++) {
    $upload .= $_FILES['data']['name']["$x" . ""].',';
    move_uploaded_file($_FILES['data']['tmp_name'][$x], $upload_directory . $_FILES['data']['name'][$x]); ##### upload into your directory     }

//echo "upload successfully..";
$con="INSERT INTO inmuebles (foto1) values ('$upload')";
$query=mysql_query($con); } ?>
在此处更改:

move_uploaded_file(
  $_FILES['data']['tmp_name'][$x],
  $upload_directory . $datetime . $_FILES['data']['name'][$x]
); ##### upload into your directory
此处的
$datetime
应该是包含时间戳的字符串。

请尝试以下操作:

$ext = pathinfo($_FILES['data']['name'][$x], PATHINFO_EXTENSION);
$newname = $datetime . '.' . $ext;
move_uploaded_file($_FILES['data']['tmp_name'][$x],
                   $upload_directory . $newname);
$info = pathinfo($_FILES['data']['name'][$x]);
$ext = $info['extension'];
$name = $info['filename'];
$newname = $name . $datetime . '.' . $ext;
move_uploaded_file($_FILES['data']['tmp_name'][$x],
                   $upload_directory . $newname);
这将替换当前文件名,并保留原始上载文件的扩展名

如果要保留原始文件名并简单地附加
datetime
,请使用以下命令:

$ext = pathinfo($_FILES['data']['name'][$x], PATHINFO_EXTENSION);
$newname = $datetime . '.' . $ext;
move_uploaded_file($_FILES['data']['tmp_name'][$x],
                   $upload_directory . $newname);
$info = pathinfo($_FILES['data']['name'][$x]);
$ext = $info['extension'];
$name = $info['filename'];
$newname = $name . $datetime . '.' . $ext;
move_uploaded_file($_FILES['data']['tmp_name'][$x],
                   $upload_directory . $newname);

使用日期和时间是唯一标记任何内容的糟糕方法,因为您的保真度限制为每秒1个项目,计算机的速度要快得多,而且可能有多人同时使用上载。取而代之的是使用一些构建工具,比如UUID(又名GUID)。您可以在PHP中使用非常基本的uniqid()函数,或者如果您阅读了某人编写的UUID函数的注释(使用版本5)


这将使文件扩展名变得模糊。@theftprevention将更改。请等待更新的答案。谢谢大家,现在可以了!:D@PraveenKumar和@theftprevention非常感谢你的帮助真的(很抱歉我的英语不好):DHi bro当我在数据库上保存链接时,如果我上传3张图片,它会显示2个空链接和我创建的raname名称,我想当用户上传3张图片时,它只在DB上生成3个url,此外,我想保存在一个不同的变量($foto)的第一张图像,im将感谢您的任何hepl!非常感谢你,因为我尝试了很多次,结果总是一样的:(@user2765552)你能解释清楚吗?我可以帮你,但你的问题不清楚。