Извлеките zip-файл, используя php, на сервере apache не работает

Я хочу, чтобы извлечь ZIP-файл с помощью PHP на сервере Apache. Но я получил ошибку по этому поводу.
Это мой код

 $enviornment = "zip -P test -r /var/www/test/test.zip /var/www/test/output/";

exec($enviornment, $output, $return);
echo "<pre>";
print_r($output);

Это сообщение об ошибке.

  [0] => zip I/O error: Permission denied
[1] => zip error: Could not create output file (/var/www/test/test.zip)

Я уже помещаю права доступа в папку / var / www / test / output /.

1

Решение

Вы пытаетесь использовать zip, но вместо этого вам нужно использовать unzip — то, что вы делаете, это создание архив из / var / www / test / output /, проверьте страницу руководства для подробностей:

Основной формат команды

          zip options archive inpath inpath ...

где архив — это новый или существующий zip-архив, а inpath — путь к каталогу или файлу, необязательно включающий подстановочные знаки. Когда дано
имя существующего zip-архива, zip будет заменять идентично
именованные записи в zip-архиве (соответствующие относительным именам, хранящимся в архиве) или добавление записей для новых имен. За
Например, если foo.zip существует и содержит foo / file1 и foo / file2, и

Каталог foo содержит файлы foo / file1 и foo / file3, затем:

          zip -r foo.zip foo

or more concisely

zip -r foo foo

заменит foo / file1 в foo.zip и добавит foo / file3 в foo.zip. После этого, foo.zip содержит foo / file1, foo / file2 и foo / file3, с
foo / file2 без изменений по сравнению с предыдущим.

Попробуйте вместо этого разархивировать или ZIP-расширения для PHP http://php.net/manual/en/intro.zip.php

0

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

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

По вопросам рекламы [email protected]