不会吧,用php压缩,还没听说这样做过哦,up一下,应该没得这种做法

解决方案 »

  1.   

    如果服务器是Unix的话,可以用exec等函数调用Unix的系统函数。
    抄来的一些资料:  常用的壓縮程式 -- UNIX 篇(1)
          gzip
      附屬檔名: gz
      特性一: 為網路上最常使用的一種壓縮程式
      特性二: 壓縮與解壓用的是同一個程式
      例: 壓縮:  gzip -9 test.tar
          解壓:  gzip -d test.gz
      特性三: 因只能壓縮檔案, 故如有目錄要壓縮者, 大都先用 tar
      來包裝起來, 故常看到的附屬檔名為 *.tar.gz 或者是 tgz  常用的壓縮程式 -- UNIX 篇(2)
          compress, uncompress
       compress 是壓縮程式, uncompress 是解壓縮程式, 附屬檔名為 *.Z
          pack,unpack
       pack 是壓縮程式, unpack 是解壓縮程式, 附屬檔名為 *.z  常用的壓縮程式 -- UNIX 篇(3)
          zip, unzip
       zip 是壓縮, unzip 是解壓縮, 附屬檔名為 *.zip, 但這個
       程式不是原來 UNIX 原有的
          tar
       tar 原來的用途是將資料放入磁帶機中, 但是因為其可以將
       多個目錄放在一個檔案的特性, 故常被用來集合包裝整個目
       錄及其檔案, 附屬檔名為 *.tar, 完成後再交予其它壓縮程
       式壓縮
      

  2.   

    有没有在windows下的解决方案呢?
    急急急急!
      

  3.   

    在unix下.zip格式的可以用zziplib库,在编译php时加入--with-zip即可,然后就有一些相关的zip函数可用了,像zip_open/zip_read/zip_close等等,不过只能读zip文件而不能写。如果是.gz格式,用到的是zlib库,也有一系列的函数可用,而且支持读写。
    在windows下,应该有编译好的zlib支持模块,把相应的dll文件拷到目录下,设定php.ini应该就可以了。但.zip格式就有点麻烦了。
    如果以上方法不行,还可以通过调用外部程序的方法来解决。
      

  4.   

    CVII. Zip File Functions (Read Only Access)
    This module uses the functions of the ZZIPlib library by Guido Draheim to transparently read ZIP compressed archives and the files inside them. Please note that ZZIPlib only provides a subset of functions provided in a full implementation of the ZIP compression algorithm and can only read ZIP file archives. A normal ZIP utility is needed to create the ZIP file archives read by this library. Zip support in PHP is not enabled by default. You will need to use the --with-zip configuration option when compiling PHP to enable zip support. This module requires ZZIPlib version >= 0.10.6. Note: Zip support before PHP 4.1.0 is experimental. This section reflects the Zip extension as it exists in PHP 4.1.0 and later. Example Usage
    This example opens a ZIP file archive, reads each file in the archive and prints out its contents. The test2.zip archive used in this example is one of the test archives in the ZZIPlib source distribution. Example 1. Zip Usage Example<?php$zip = zip_open("/tmp/test2.zip");if ($zip) {    while ($zip_entry = zip_read($zip)) {
            echo "Name:               " . zip_entry_name($zip_entry) . "\n";
            echo "Actual Filesize:    " . zip_entry_filesize($zip_entry) . "\n";
            echo "Compressed Size:    " . zip_entry_compressedsize($zip_entry) . "\n";
            echo "Compression Method: " . zip_entry_compressionmethod($zip_entry) . "\n";        if (zip_entry_open($zip, $zip_entry, "r")) {
                echo "File Contents:\n";
                $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
                echo "$buf\n";            zip_entry_close($zip_entry);
            }
            echo "\n";    }    zip_close($zip);}?>
     
     Table of Contents
    zip_close — Close a Zip File Archive
    zip_entry_close — Close a Directory Entry
    zip_entry_compressedsize — Retrieve the Compressed Size of a Directory Entry
    zip_entry_compressionmethod — Retrieve the Compression Method of a Directory Entry
    zip_entry_filesize — Retrieve the Actual File Size of a Directory Entry
    zip_entry_name — Retrieve the Name of a Directory Entry
    zip_entry_open — Open a Directory Entry for Reading
    zip_entry_read — Read From an Open Directory Entry
    zip_open — Open a Zip File Archive
    zip_read — Read Next Entry in a Zip File Archive
      

  5.   

    Read Only Access还是能读不能写