如何从废弃的上传表单中删除服务器上的临时文件



我有一个上传表格,用于通过PHP注册用户图片。
我使用Wamp服务器。
我希望当用户开始上传文件然后放弃上传表单(出于任何原因(时,上传的文件会在 10 分钟后被删除。

如何从这些废弃的上传表单中删除服务器上的临时文件?

如何为上传的文件创建临时文件夹并在一段时间后将其清空?

如何在不使用PHP代码的情况下做到这一点,因为也许在上传文件后,用户不会继续并且PHP脚本不会处理它,因此该文件不会被删除,但应该删除。

如何在不使用PHP代码的情况下做到这一点?

如何在没有用户请求的情况下运行PHP代码,并通过服务器删除旧的上传文件?

您可以使用 ini 文件中的 http://php.net/manual/en/ini.core.php#ini.upload-tmp-dir 或使用 ini 函数来设置temp_folder

你可以得到他的临时文件夹位置与 http://php.net/manual/en/function.sys-get-temp-dir.php


临时文件(ei:$_FILES['userfile']['tmp_name'](在脚本完成后立即删除 php::tmp 文件保留多长时间? 和 PHP 文档。


如果您谈论的是您移动到其他地方的文件,并且您的服务器有权在文件夹中写入/删除,您可以执行以下操作
foreach (glob("your_temp_folder/*") as $Filename) {
    // Read file creation time
    $FileCreationTime = filectime($Filename);
    // Calculate file age in seconds
    $FileAge = time() - $FileCreationTime; 
    // Is the file older than the given time span?
    if ($FileAge > ($expire_time * 60)){
        // Now do something with the olders files...
        print "The file $Filename is older than $expire_time minutesn";
        // For example deleting files:
        //unlink($Filename);
    }
}

代码段信用到 => http://www.jonasjohn.de/snippets/php/delete-temporary-files.htm

最新更新