Создание заархивированной папки одним нажатием кнопки - PullRequest
0 голосов
/ 28 декабря 2011

У меня есть папка с файлами, и одним нажатием кнопки из приложения я хочу создать версию папки в сжатом виде. Я понимаю, что можно создать версию tar.gz в системе UNIX, передав команду exec (tar -cvf foldername destination_filename).

Вопрос. Можно ли создать ZIP-файл в системе UNIX? Если это возможно, какая логика / команда стоит за этим?

Ответы [ 3 ]

2 голосов
/ 28 декабря 2011

Большинство * nix систем будут поддерживать следующую комманду:

zip -r destination_filename.zip foldername 
1 голос
/ 28 декабря 2011

Вам необходимо передать параметр -z в tar, чтобы он также сжал файл:

tar -czf foo.tar.gz foo/

Убедитесь, что вы находитесь в месте, где веб-сервер имеет права на запись.Например, вам может понадобиться chdir в родительскую папку папки, которую вы хотите сжать, а затем получить имя временного файла в /tmp, а затем создать команду для архивирования этого временного файла.

Звучит так, как будто все остальное разобрано!

http://www.gnu.org/software/tar/manual/tar.html

1 голос
/ 28 декабря 2011

Использовать расширение php zip?http://www.php.net/manual/en/class.ziparchive.php И я думаю, вы также найдете полезные классы из phpclasses: http://www.phpclasses.org/search.html?words=zip&x=0&y=0&go_search=1

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...