Я создаю веб-сайт с использованием codeigniter, который позволит пользователям загружать файлы, похожие на gmail. Под этим я подразумеваю, что пользователь может загрузить только 1 файл или все файлы в папке zip.
Поскольку файлов будет много, я закодировал их имена, чтобы избежать дублирования, и сохранил их исходные имена в базе данных, которая возвращает мне массив, подобный этому:
Array
(
[0] => Array
(
[file_id] => 2
[file_name] => v6_copy.pdf
[file_path] => uploads/4/d5/67697ff58d09d3fb25d563bf85d3f1ac.pdf
)
[1] => Array
(
[file_id] => 3
[file_name] => v4_copy.pdf
[file_path] => uploads/7/cf/38212079635e93a8f8f4d4a3fc2a11ff.pdf
)
)
Что мне нужно сделать, так это получить каждый файл, переименовать его в исходное имя и затем сжать его одним почтовым индексом. В настоящее время я пытаюсь использовать помощник по кодировке zip, но я могу ' Кажется, я не могу переименовать файлы.
foreach ($query->result() as $row) // This returns what you see above
{
// I need to rename the file somewhere here
$this->zip->read_file($row->filename);
}
$this->zip->download('files_backup.zip');
Есть ли способ сделать это, не создавая вручную каталог, не копируя файлы, не переименовывая их, а затем архивируя файл?
Любая помощь наиболее ценится.