Удалить файл через некоторое время в PHP
У меня есть php-скрипт, который предоставляет ссылку на временный файл, созданный с помощью скрипта. Я хочу, чтобы человек мог загрузить файл, но я не хочу, чтобы файл оставался на сервере в течение длительного времени. Я хотел бы удалить файл, скажем, через 2 минуты. Как это можно сделать?
2 ответов:
Вы можете удалить его сразу после загрузки. выведите содержимое файла, затем закройте его и
unlinkего.Edit : Пример
$fo = fopen($f, 'rb') ; $content = fread($fo, filesize($f)) ; fclose($fo) ; } // Stream the file to the client header("Content-Type: application/octet-stream"); header("Content-Length: " . strlen($archive)); header("Content-Disposition: attachment; filename=\"myfile.exe\""); echo $archive; unlink($f);
Настройте задание cron для запуска сценария очистки каждые несколько минут. Вы можете использовать функцию filemtime(), чтобы увидеть, когда файл был создан, и удалить его, если файл считается "достаточно старым".
Comments