php - 创建临时文件并自动删除

标签 php temporary-files

我正在写一个防盗链下载脚本,我的计划是创建一个临时文件,以session ID命名,然后session到期后,该文件会被自动删除。可能吗 ?你能给我一些如何在 PHP 中做到这一点的提示吗?

非常感谢您的回复

最佳答案

PHP 有一个名为 tmpfile 的函数.它创建一个临时文件并返回一个资源。该资源可以像任何其他资源一样使用。

例如手册中的示例:

<?php
$temp = tmpfile();
fwrite($temp, "writing to tempfile");
fseek($temp, 0);
echo fread($temp, 1024);
fclose($temp); // this removes the file
?>

文件在关闭(使用 fclose())或脚本结束时自动删除。您可以在资源上使用任何文件功能。你可以找到这些 here .希望这对您有所帮助?

另一种解决方案是以常规方式创建文件并使用 cronjob 定期检查 session 是否过期。到期日期和其他 session 数据可以存储在数据库中。使用脚本查询该数据并确定 session 是否已过期。如果是这样,请将其从磁盘中物理删除。确保大约每小时运行一次脚本(取决于您的超时时间)。

关于php - 创建临时文件并自动删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1779205/

相关文章:

php - 在主 div 循环中添加 3 div

php - 必须使用事件访问 token 来查询 Laravel 中当前用户的信息

c++ - QTemporaryFile 为空

ruby-on-rails - 使用 Tempfile 在 rails 中创建一个 zip 文件

windows - 在 Windows 中获取安全的临时文件夹

ruby - 当路径在 Ruby 中已知时取消链接 Tempfile

php - 将值从数据库加载到 html-select 输入

php - 如何使用 opencart 将一些变量发布到文件?

php - 为什么 PHP 私有(private)变量适用于扩展类?

javascript - NodeJs 使用 tmp 或其他东西创建、服务和删除临时文件