在PHP中上载文件时如何更改文件名

在PHP中上载文件时如何更改文件名,php,Php,我有我的上传文件脚本在这里工作 我只是想知道如何将文件名更改为以下格式: $var\.ext其中$var是我设置的变量,是生成的随机4位数字,ext是原始文件名的扩展名 我看过其他关于这一点的帖子,但不太确定如何将其全部整合到我的脚本中 $allowedExts = array("gif", "jpeg", "jpg", "png"); $temp = explode(".", $_FILES["file"]["name"]); $extension = end($temp); if ((($

我有我的上传文件脚本在这里工作

我只是想知道如何将文件名更改为以下格式:

$var\.ext其中$var是我设置的变量,是生成的随机4位数字,ext是原始文件名的扩展名

我看过其他关于这一点的帖子,但不太确定如何将其全部整合到我的脚本中

$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);

if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 5000000)
&& in_array($extension, $allowedExts)) {
  if ($_FILES["file"]["error"] > 0) {
    header( 'Location: photo_upload.php?error=1&jobno=' . $jobno) ;
  } else {

    if (file_exists("upload_images/" . $_FILES["file"]["name"])) {
     header( 'Location: photo_upload.php?error=2&jobno=' . $jobno) ;
    } else {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload_images/" . $_FILES["file"]["name"]);

谢谢

只需编辑您上传的移动文件即可

move_uploaded_file($_FILES["file"]["tmp_name"], "upload_images/" . $var . '_' . rand(1000, 9999) . '.' . pathinfo($_FILES["file"]["name"], PATHINFO_EXTENSION);
而不是

move_uploaded_file($_FILES["file"]["tmp_name"],
"upload_images/" . $_FILES["file"]["name"]);
  move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload_images/" . $_FILES["file"]["name"]);
你只需要做:

move_uploaded_file($_FILES["file"]["tmp_name"],
"upload_images/" . THE_NAME_YOU_WANT);
而不是

move_uploaded_file($_FILES["file"]["tmp_name"],
"upload_images/" . $_FILES["file"]["name"]);
  move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload_images/" . $_FILES["file"]["name"]);
只需将文件名重命名为

$_FILES["file"]["name"])
请参阅下面的代码以重命名该文件

$temp = explode(".",$_FILES["file"]["name"]);
$newfilename="new_file".end($temp);
move_uploaded_file($_FILES["file"]["tmp_name"],
upload_images/" . $newfilename);

您的帖子已被标记为低质量。请提供一些解释。