συμπιεση αρχειων : PHP Zip File Functions

Η συμπιεση αρχειων είναι μια από τις πιο συνηθισμένες διαδικασίες για τη μεταφορά αρχείων. Όπως όλες οι γλώσσες προγραμματισμού, έτσι και η γλώσσα php διαθέτει τις απαραίτητε συναρτήσεις για τη συμπιεση αρχειων

συμπιεση αρχειων
php zip

Σε αυτό το άρθρο παρουσιάζουμε τον τρόπο με το οποίο η γλώσσα php χειρίζεται τα αρχεία zip για τη συμπιεση αρχειων

Για να μπορέσετε να εκτελέσετε τις συναρτήσεις Zip στο δικό σας server θα πρέπει να εγκαταστήσετε τις παρακάτω βιβλιοθήκες:
Τη ZZIPlib library από Guido Draheim
Το Zip PELC extension

συμπιεση αρχειων

Για να ενεργοποιήσουμε σε κάθε PHP extension, τα PHP extension_dir setting (που βρίσκονται στο αρχείο php.ini) πρέπει να έχουν οριστεί στο φάκελο (directory ) που έχουν τοποθετηθεί τα PHP extensions
Ένα παράδειγμα τιμής του extension_dir θα μπορούσε να είναι c:\php\ext.

Όλες οι συναρτήσεις που ακολουθούν είναι συμβατές με την έκδοση 4 της γλώσσας php καθώς και με τις επόμενες

Στη συνέχεια ακολουθούν οι συναρτήσεις php για τη συμπιεση αρχειων, δηλαδή οι συναρτήσεις που σχετίζονται με το χειρισμό των zip αρχείων:

zip_close()
Κλείνει ένα αρχείο zip που άνοιξε με τη συνάρτηση zip_open()

Παράδειγμα στη συμπιεση αρχειων:

<!--?php $zip = zip_open("test.zip"); zip_read($zip); // some code zip_close($zip); ?-->

zip_entry_close()
Κλείνει ένα αρχείο zip που άνοιξε με τη συνάρτηση zip_entry_open()

Παράδειγμα στη συμπιεση αρχειων:

<!--?php <br ?-->$zip = zip_open("test.zip");

if ($zip)
  {
  while ($zip_entry = zip_read($zip))
    {
    echo "
";
    echo "Name: " . zip_entry_name($zip_entry) . "
";
  if (zip_entry_open($zip, $zip_entry))
    {
    // some code
    zip_entry_close($zip_entry);
    }
  echo "

";
  }
zip_close($zip);
}
?>

zip_entry_compressedsize()

Επιστρέφει το μέγεθος του συμπιεσμένου αρχείου

Παράδειγμα:

<!--?php <br ?-->$zip = zip_open("test.zip");

if ($zip)
  {
  while ($zip_entry = zip_read($zip))
    {
    echo "
";
    echo "Name: " . zip_entry_name($zip_entry) . "
";
    echo "Compressed Size: "
    . zip_entry_compressedsize($zip_entry);
    echo "

";
    }
  zip_close($zip);
  }
?>

zip_entry_compressionmethod()

Επιστρέφει τη μέθοδο συμπίεσης

Παράδειγμα:

<!--?php <br ?-->$zip = zip_open("test.zip");

if ($zip)
  {
  while ($zip_entry = zip_read($zip))
    {
    echo "
";
    echo "Name: " . zip_entry_name($zip_entry) . "
";
    echo "Compression Method: "
    . zip_entry_compressionmethod($zip_entry);
    echo "

";
    }
  zip_close($zip);
  }
?>

zip_entry_filesize()

Επιστρέφει το αρχικό μέγεθος του αρχείου (πριν από τη συμπιεση αρχειων)

Παράδειγμα:

<!--?php <br ?-->$zip = zip_open("test.zip");

if ($zip)
  {
  while ($zip_entry = zip_read($zip))
    {
    echo "
";
    echo "Name: " . zip_entry_name($zip_entry) . "
";
    echo "Original size: " . zip_entry_filesize($zip_entry);
    echo "

";
    }
  zip_close($zip);
  }
?>

zip_entry_name()

Επιστρέφει το όνομα του ζιπαρισμένου αρχείου

Παράδειγμα:

<!--?php <br ?-->$zip = zip_open("test.zip");

if ($zip)
  {
  while ($zip_entry = zip_read($zip))
    {
    echo "Name: " . zip_entry_name($zip_entry) . "
";
    }
  zip_close($zip);
  }
?>

zip_entry_open()

Ανοίγει ένα ζιπαρισμένο αρχείο για ανάγνωση

Παράδειγμα:

<!--?php <br ?-->$zip = zip_open("test.zip");

if ($zip)
  {
  while ($zip_entry = zip_read($zip))
    {
    echo "
";
    echo "Name: " . zip_entry_name($zip_entry) . "
";
    if (zip_entry_open($zip, $zip_entry))
      {
      // some code
      }
    echo "

";
  }
zip_close($zip);
}
?>

zip_entry_read()

Παίρνει τα περιεχόμενα ενός ζιπαρισμένου αρχείου

Παράδειγμα:

<!--?php <br ?-->$zip = zip_open("test.zip");

if ($zip)
  {
  while ($zip_entry = zip_read($zip))
    {
    echo "
";
    echo "Name: " . zip_entry_name($zip_entry) . "
";

    if (zip_entry_open($zip, $zip_entry))
      {
      echo "File Contents:
";
      $contents = zip_entry_read($zip_entry);
      echo "$contents
";
      zip_entry_close($zip_entry);
      }
    echo "

";
  }

zip_close($zip);
}
?>

zip_open()

Ανοίγει ένα ζιπαρισμένο αρχείο για ανάγνωση

Παράδειγμα:

<!--?php $zip = zip_open("test.zip"); zip_read($zip); // some code zip_close($zip); ?-->

zip_read()
Ανοίγει το επόμενο αρχείο από τα περιεχόμενα του ζιπαρισμένου αρχείου

Παράδειγμα για τη συμπιεση αρχειων:

<!--?php $zip = zip_open("test.zip"); zip_read($zip); // some code zip_close($zip); ?-->

Είδαμε παραδείγματα με τις συναρτήσεις php που σχετίζονται με τη συμπιεση αρχειων


signature

Σχολιάστε