【发布时间】:2026-01-14 17:10:01
【问题描述】:
在下面的代码中,file_exists() 没有按预期工作。即使我尝试上传相同的文件,else 部分也会被执行。 (即file_exists() 在每种情况下都返回false。)这种行为背后的原因是什么?
if (isset($_FILES['file']['name']) && isset($_FILES['file']['size']) && isset($_FILES['file']['type']) && isset($_FILES['file']['tmp_name']))
{
if (!empty($_FILES['file']['name']) && strtolower(pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION))=='jpg' || strtolower(pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION))=='jpeg')
{
if(file_exists($_FILES['file']['name']))
{
echo 'file exists';
}
else
{
move_uploaded_file($_FILES['file']['tmp_name'], 'Images/'.$_FILES['file']['name']);
echo $_FILES['file']['name'].' Uploaded'.'<br>';
}
}
}
else{
echo 'select your file';
}
【问题讨论】:
-
'Images/'.$_FILES['file']['name']- 这是您将文件移动到的位置,但您只测试$_FILES['file']['name'](请记住,信息由客户端提供,它几乎可以是any 字符串) -
@VolkerK 谢谢!现在工作得很好。
标签: php file-exists