TalkPHP
 
 
Account Login
Latest Articles
» The basic usage of PHPTAL, a XML/XHTML template library for PHP
» Vulnerable methods and the areas they are commonly trusted in.
» Simple way to protect a form from bot
» The Basics On: How Session Stealing Works
» How to keep your forms from double posting data
IRC Channel
IRC Speech Bubble Join the friendly bunch on IRC...
(#TalkPHP on Freenode)

...Also available via a web interface.

See this thread for information on the TalkPHP Free Hugs Initiative™. Subject to availability.
Associates
Associates
CSS Tutorials
Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old 07-23-2010, 01:40 AM   #1 (permalink)
The Contributor
 
Join Date: Apr 2008
Posts: 78
Thanks: 0
benton is on a distinguished road
Default How to keep directory structure in gzip

I'm trying to create a script to read my files and add them to a gzip file. The code below works except that the paths are not written. So if the code below is ran as it is, the file within the gzip file will have the full contents of both index.php files in one file. I want to have it keep the directory structure like is seen in such gz files. Would someone please point out where my mistake is?

PHP Code:
$filenames = array();
$filenames[] = 'a/index.php'
$filenames[] = 'a/b/index.php'

$zh gzopen('archive.gz'"w9");

foreach (
$filenames as $filename) {

  
$ifh fopen($filename'rb');  

  
gzwrite($zhfread($ifhfilesize($filename)));  
  
  
fclose($ifh);

benton is offline  
Reply With Quote
Old 07-23-2010, 02:59 AM   #2 (permalink)
is cute and cuddly
 
delayedinsanity's Avatar
 
Join Date: Mar 2008
Location: Vegas, Baby
Posts: 963
Thanks: 31
delayedinsanity is on a distinguished road
Default

Gzip compresses (and can only compress) a single file. To create a package of files maintaining structure, you need to first create a tarball, then compress that. This is why you see the file extensions .tar.gz and .tgz for archived packages (gzipped tarball). The only things that are compressed directly by gzip are usually long text files, such as log files, etc.

Depending on what you are attempting to do, you may be better off writing a bash script to create your compressed archive. PHP has the exec() function to run command line operations, but using such methods is only recommended if you are well versed in the security concerns it raises.
delayedinsanity is offline  
Reply With Quote
Old 07-23-2010, 03:26 PM   #3 (permalink)
The Contributor
 
Join Date: Apr 2008
Posts: 78
Thanks: 0
benton is on a distinguished road
Default

Thank you for the information. That was enough to allow me to look up the needed information and I have it working now.
benton is offline  
Reply With Quote
Reply



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
File Structure Change Village Idiot TalkPHP Developer Team 7 01-22-2013 03:30 AM
Virtual Directory Support? delayedinsanity General 4 11-08-2012 09:04 PM
[How To] Allow / Disallow Directory Browsing dynaweb Tips & Tricks 6 04-14-2009 12:57 PM
Databse structure Village Idiot TalkPHP Developer Team 3 01-16-2009 10:31 PM
Database Structure for a Poll CMellor General 5 11-17-2007 01:27 AM


All times are GMT. The time now is 08:41 AM.

 
     

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.1.0
Inactive Reminders By Icora Web Design