2014-09-26 66 views
1

我想在apache服務器中使用php解壓zip文件。但是我在這方面遇到了一個錯誤。 這是我的代碼。在apache服務器中使用php解壓zip文件

$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 /文件夾中放置了正確的權限。

+0

確保所有文件夾中有適當的寫權限。 – 2014-09-26 12:20:57

+0

你可以更新你的問題,並從'/ var/www/test'列出'ls'你的權限。 – Debflav 2014-09-26 12:22:36

+0

我沒有給你 – 2014-09-26 12:33:23

回答

0

您嘗試使用壓縮,但你需要使用解壓縮,而不是 - 你在做什麼是在/ var/WWW /測試/輸出生成存檔細節/,檢查手冊頁:

的基本命令格式是

  zip options archive inpath inpath ... 

其中歸檔文件是新的或現有的zip檔案和INPATH是任選包括通配符的目錄或文件路徑。給定 現有zip歸檔的名稱時,zip將相同地替換zip歸檔中的命名條目(與存儲在歸檔中的相對名稱相匹配)或爲新名稱添加條目 。對於 例如,如果foo.zip存在並且包含富/ file1和富/文件2,和 的 目錄foo的包含文件富/ file1和富/文件3,然後:

  zip -r foo.zip foo 

    or more concisely 

      zip -r foo foo 

將取代富/文件1在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