Zip и скачать файлы из каталога и удалить .zip файл после загрузки

Я пытаюсь заархивировать и загрузить файлы из каталога, используя PHP, и я использовал предложение «skrilled» из следующего URL:

ZIP все файлы в каталоге и скачать .zip генерируется

Код работает нормально для меня, но мне нужно добавить следующие функции в коде:

  1. Я хочу добавить случайные символы в имя файла, как показано ниже:

$ zipname = ‘adcs_RAN-CHARACTERS-HERE.zip’;

  1. Я хочу удалить файл после того, как пользователь скачал файл.

0

Решение

Я хочу добавить случайные символы в имя файла, как показано ниже:
$ zipname = ‘adcs_RAN-CHARACTERS-HERE.zip’;

Когда вы создадите имя, идите вперед и вставьте любые произвольные символы, которые вы хотите. Скажем, например, что вы хотели включить несколько читабельную временную метку (с точностью до секунды), вы можете сделать это так:

$zipname = 'adcs_' . date('YmdHis') . '.zip';

Обратите внимание, что в строке заголовка необходимо указать имя переменной:

header("Content-Disposition: attachment; filename='$zipname'");

Я хочу удалить файл после того, как пользователь скачал файл.

Это становится сложнее. Проблема в том, что вы не можете точно знать, когда пользователь завершил загрузку файла. Я бы использовал другой скрипт для периодической очистки файлов (например, запланированный как задание cron). Или каждый раз, когда вы собираетесь создать новый zip-файл, вы можете сначала удалить все старые. Или просто используйте каталог temp / tmp в системе, который будет очищаться всякий раз, когда это происходит.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector