PHP:临时上传的文件什么时候会被删除?

2022-08-30 10:45:46

我正在运行WAMP服务器。关于使用PHP上传文件我看到

$_FILES[tmp_name] => string 'C:\wamp\tmp\phpD382.tmp' (length=23)

我转到该文件夹,它是空的。我确保我的“显示隐藏文件”从我的“文件夹选项”打开,但我没有看到它。它到底在哪里?

此外,它何时被删除?如果我不移动该文件?例如,如果我正在上传一个文件,并且文件上传到中途,我决定关闭该浏览器,那么该文件会发生什么?服务器何时知道要删除该临时文件?


答案 1

一旦您的PHP脚本完成执行并重新保存到定义的位置

使用直接PHP的示例,没有框架

http://www.php.net/manual/en/features.file-upload.post-method.php

$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "File is valid, and was successfully uploaded.\n";
} else {
    echo "Possible file upload attack!\n";
}

echo 'Here is some more debugging info:';
print_r($_FILES);

print "</pre>";

?>

答案 2

如果您不对它们执行任何操作,它们将在脚本完成后立即删除。


推荐