Schneller Upload und Zip entpacken mit PHP

Auch wenn man mit DSL inzwischen ganz gut im Internet unterwegs ist, gibt es eine Sache, die mich als Nutzer manchmal nervt:

Das Uploaden von vielen kleinen Dateien – z.B. bei einer WordPress Installation per FTP auf einen Server

Die WordPress Installation hat ca. 4.600 KB – gezippt. Entpackt ist das Skript 11.300 KB groß und benötigt 949 Dateien in 97 Ordnern. Da jedes File einzeln per FTP hoch geladen wird benötigt man auch bei einer 16.000 DSL Leitung locker das 10face der Zeit. Von der höheren Fehleranfälligkeit bei der Übertragung mal abgesehen.

Viel einfacher ist es, das zip Arciv selbst hoch zu laden und folgendes kleines Skript unzip.php:

1
2
3
4
5
6
7
<?PHP 
$tarName = 'wp33.zip'; 
$shellBefehl = "unzip $tarName"; 
$shellBefehl = escapeshellcmd($shellBefehl); 
exec($shellBefehl,$stream); 
print_r($stream); 
?>

Im Skript muss der Dateiname des Archives angegeben werden, und das Skript muss zusammen mit dem Archiv in einem Verzeichnis liegen. Dann ruft man das Skript einfach mit einem Browser auf und in Sekundenbruchteilen ist das Arciv auf dem Server entpackt. Zusammen mit dem schnellen Upload spart man so enorm Zeit.