How to Unzip Folders on the Server Using a Simple PHP Script

I have been installing WordPress MU and BuddyPress a lot recently as I test and test and test it for a client’s website.  The uploading of files via ftp has been the biggest consumer of time during this process.

Yesterday, I discovered a simple PHP script that makes installing WPMU, BuddyPress, WordPress, or really anything else a quick and painless process.  All you need is a zipped folder!  Here is the script:

<?php system('unzip FILENAME.zip'); ?>

Simply:

  1. Create a file called unzip.php on your server.
  2. Copy-and-paste the above line of code into the file. Make sure to update “filename.zip” to whatever your file path is.
  3. Open a browser and point it to http://YOURDOMAIN.com/unzip.php (make sure to change “yourdomain.com” to your domain).

That’s it!

Posted in ,

7 Comments

  1. Paul Alvares on March 22, 2010 at 8:31 pm

    Champ! it works great =]



  2. RB on May 25, 2010 at 1:26 pm

    You are fantastic!!! Saved me so much time after spending a couple of hours trying to figure out(I’m new to this)…thank you! (O:



  3. be on September 18, 2010 at 6:23 am

    Warning: system() has been disabled for security reasons…

    it doesn’t work.



    • Toby on September 28, 2010 at 9:22 am

      That is an issue with your hosting provider.



  4. raoul on August 19, 2011 at 8:54 am

    hm.. no luck. Script runs fine. Just no result.



  5. toby on August 30, 2011 at 12:17 pm

    @raoul and @be – The issue is likely your server setup. Contact your hosting provider and ask them to support the function listed above.



  6. Vasu on December 22, 2011 at 6:00 am

    Here’s an alternate method:

    $zip = new ZipArchive;
      $zipped = $zip->open('test.zip');
      if ( $zipped ) {
      $zip->extractTo(dirname(__FILE__).'test');
      $zip->close();
    }