Php 如果file“u exists()为TRUE,则使用tempnam()为$u FILES[";file";][";name";]指定一个唯一的名称

Php 如果file“u exists()为TRUE,则使用tempnam()为$u FILES[";file";][";name";]指定一个唯一的名称,php,Php,这里是PHP新手 我正在尝试创建一个if语句,如果文件存在()返回true,则该语句会将$\u文件[“文件”][“名称”]的名称更改为唯一的名称 我的代码如下。。我试着使用tempnam(),但我不能100%确定如何使用PHP实现它 if (file_exists("upload/" . $_FILES["file"]["name"])) { $_FILES["file"]["name"] = "image/tempnam('',newsFeed)";//this is

这里是PHP新手

我正在尝试创建一个if语句,如果
文件存在()
返回true,则该语句会将
$\u文件[“文件”][“名称”]
的名称更改为唯一的名称

我的代码如下。。我试着使用
tempnam()
,但我不能100%确定如何使用PHP实现它

if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      $_FILES["file"]["name"] = "image/tempnam('',newsFeed)";//this is my problem
      $dialog = $_FILES["file"]["name"] . " already exists. ";
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      }
有没有更好的方法来实现这一点,因为现在我刚刚遇到一个php错误:

警告:移动上传的文件(upload/image/tempnam('',newsFeed))[函数.移动上传的文件]:无法打开流:没有这样的文件或目录

目录确实存在,因为上载表单使用的文件名称不同

任何形式的帮助或指导都将不胜感激

更换

  $_FILES["file"]["name"] = "image/tempnam('',newsFeed)";

更改此选项

if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      $_FILES["file"]["name"] = "image/tempnam('',newsFeed)";//this is my problem
      $dialog = $_FILES["file"]["name"] . " already exists. ";
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      }


始终为文件提供一个唯一的随机生成的名称,而不仅仅是在它已经存在的情况下。看,我用这个代替了它,它起作用了。谢谢你的帮助$_文件[“文件”][“名称”]=“”.tempnam('upload/',newsFeed);
if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      $_FILES["file"]["name"] = "image/tempnam('',newsFeed)";//this is my problem
      $dialog = $_FILES["file"]["name"] . " already exists. ";
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      }
if (file_exists("upload/" . $_FILES["file"]["name"])) {
      $dialog = $_FILES["file"]["name"] . " already exists. ";
      move_uploaded_file($_FILES["file"]["tmp_name"], 
                         "upload/image/".tempnam('',newsFeed);
}