Teil von  SELFPHP
Professional CronJob-Service

Suche

International PHP Conference


WebTech Conference


:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP?
In über 130.000 Beiträgen finden Sie sicher die passende Antwort!  

 
PHP Summit


Software Architecture Summit


:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 
HTML5 Days


JavaScript Days


:: Qozido ::

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.   

 
 
Dateien/Verzeichnisse mit ZIP komprimieren

Am Ende der Seite finden Sie das komplette Beispiel als Download.

Systemvoraussetzung

  • Linux
  • PHP 3
  • PHP 4
  • PHP 5
  • ZIP

Datei(en)

zip.php


Das Skript komprimiert alle angegebenen Dateien und Verzeichnisse und speichert diese in einer Zip-Datei im gleichen Verzeichnis wie die PHP-Datei. Die erzeugte Zip-Datei eignet sich gerade für den Einsatz unter einem Windows-Betriebssystem.


Hinweis

Sollte das Skript, nachdem Sie es ausgeführt haben, keine Backupdatei erzeugen, lesen Sie bitte den Text zu Verzeichnisrechten im einleitenden Teil „Grundlegende Informationen“ in diesem Kapitel. Höchstwahrscheinlich wird es dann daran liegen, dass Sie nicht die erforderlichen Rechte für dieses Verzeichnis besitzen und diese erst vergeben müssen.

Dieses Beispiel wird neben den beiden Textdateien Testdatei1.txt und Testdatei2. txt das komplette Verzeichnis testordner/ incl. Unterverzeichnissen komprimieren. Weiterhin werden im testordnerSQL/ alle *.sql-Dateien archiviert und komprimiert. Sollten sich in diesem Verzeichnis weitere Unterverzeichnisse mit sql-Dateien befinden, so werden diese nicht mit in die Archivdatei aufgenommen.

01:
02:
03:
04:
05:
06:
07:
08:
<?PHP

$files[] = 'Testdatei1.txt';
$files[] = 'Testdatei2.txt';
$files[] = 'testordner/';
$files[] = 'testordnerSQL/*.sql';

?>

Die in unserem Array $files zu sichernden Dateien müssen durch ein Leerzeichen voneinander getrennt werden, damit der Befehl zip einwandfrei funktioniert. Wie wir in der Einleitung bereits erklärt haben, verzichten wir hier bewusst auf espaceshellcmd(). Zum Schluss führen wir unser Statement mit dem Befehl exec() aus und erhalten dank unseres Parameters v als Rückgabewert die gesicherten Dateinamen und Verzeichnisse inkl. prozentualer Angabe der Komprimierungsrate.

09:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21 :
<?PHP

$implodeFiles implode(" "$files);

$tarName 'backup.zip';

$shellBefehl "zip -r $tarName $implodeFiles";

exec($shellBefehl,$var);

print_r($var);

?>

Ausgabe im Browser

Array
(
      [0] => adding: Testdatei1.txt (deflated 100%)
      [1] => adding: Testdatei2.txt (deflated 100%)
      [2] => adding: testordner/ (stored 0%)
      [3] => adding: testordner/Testdatei4.txt (deflated 100%)
      [4] => adding: testordner/Testdatei5.txt (deflated 100%)
      [5] => adding: testordner/Testdatei6.txt (deflated 100%)
      [6] => adding: testordnerSQL/selfphp_testfile.sql (deflated 88%)
      [7] => adding: testordnerSQL/selfphp_testfile1.sql (deflated 88%)
      [8] => adding: testordnerSQL/selfphp_testfile2.sql (deflated 88%)
)


 


Dieses Skript aus dem SELFPHP KOCHBUCH wurde von SELFPHP unter dem "Tarif Mc500" von McAc.net-Webhosting erfolgreich ausgeführt und getestet!

Auf der Übersichtseite unter "McAc.net – Webhosting zu diesem Buch" finden Sie weitere Informationen zu dem Webhostingpaket, dass durch SELFPHP getestet wurde.




 

Download

Info   ZIP BZIP2 TARGZ
Größe   1.21 Kilobyte 1.35 Kilobyte 1.30 Kilobyte

Alle Beispiele als PHP-Datei(en)

Hier haben Sie die Möglichkeit, sich sämtliche auf dieser Seite gezeigten Beispiele als PHP-Dateien direkt downzuloaden.

Umständliches Copy & Paste ist daher nicht mehr notwendig, da alle Beispiele sofort ausprobiert werden können.

Sie haben bei der Auswahl der bereitgestellten Downloads mehrere Möglichkeiten, je nachdem welches Komprimierungsverfahren Sie bevorzugen.

Zurück zur Übersichtsseite


 




:: Premium-Partner ::

Webhosting/Serverlösungen

LeaseWeb Germany GmbH weitere Premium-Partner
 

:: SELFPHP Sponsor ::

Microsoft Deutschland GmbH weitere Sponsoren
 

:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 
 

Ausgewählter Tipp im Bereich PHP-Skripte


Dateidownload realisieren

Weitere interessante Beispiele aus dem SELFPHP Kochbuch finden Sie im Bereich PHP-Skripte
 

SELFPHP Code Snippet


Datenbank-Backup mit automatischem FTP-Upload

Weitere interessante Code Snippets finden Sie auf SELFPHP im Bereich PHP Code Snippets
 
© 2001-2014 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt
© 2005-2014 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de