From 2067d1a727e7eb5e5ffb40e967f3d1fc4c8a41b2 Mon Sep 17 00:00:00 2001 From: Derek Allard Date: Thu, 13 Nov 2008 22:59:24 +0000 Subject: Changing EOL style to LF --- user_guide/libraries/zip.html | 554 +++++++++++++++++++++--------------------- 1 file changed, 277 insertions(+), 277 deletions(-) (limited to 'user_guide/libraries/zip.html') diff --git a/user_guide/libraries/zip.html b/user_guide/libraries/zip.html index c789c85ff..ebd5b49a6 100644 --- a/user_guide/libraries/zip.html +++ b/user_guide/libraries/zip.html @@ -1,278 +1,278 @@ - - - - - -Zip Encoding Class : CodeIgniter User Guide - - - - - - - - - - - - - - - - - - - - - -
- - - - - -

CodeIgniter User Guide Version 1.7

-
- - - - - - - - - -
- - -
- - - -
- - -

Zip Encoding Class

-

CodeIgniter's Zip Encoding Class classes permit you to create Zip archives. Archives can be downloaded to your -desktop or saved to a directory.

- - -

Initializing the Class

-

Like most other classes in CodeIgniter, the Zip class is initialized in your controller using the $this->load->library function:

- -$this->load->library('zip'); -

Once loaded, the Zip library object will be available using: $this->zip

- - -

Usage Example

- -

This example demonstrates how to compress a file, save it to a folder on your server, and download it to your desktop.

- - -$name = 'mydata1.txt';
-$data = 'A Data String!';
-
-$this->zip->add_data($name, $data);
-
-// Write the zip file to a folder on your server. Name it "my_backup.zip"
-$this->zip->archive('/path/to/directory/my_backup.zip'); -

- // Download the file to your desktop. Name it "my_backup.zip"
-$this->zip->download('my_backup.zip'); -
- -

Function Reference

- -

$this->zip->add_data()

- -

Permits you to add data to the Zip archive. The first parameter must contain the name you would like -given to the file, the second parameter must contain the file data as a string:

- - -$name = 'my_bio.txt';
-$data = 'I was born in an elevator...';
-
-$this->zip->add_data($name, $data); -
- -

You are allowed multiple calls to this function in order to -add several files to your archive. Example:

- - -$name = 'mydata1.txt';
-$data = 'A Data String!';
-$this->zip->add_data($name, $data);
-
-$name = 'mydata2.txt';
-$data = 'Another Data String!';
-$this->zip->add_data($name, $data);
-
- -

Or you can pass multiple files using an array:

- - -$data = array(
-                'mydata1.txt' => 'A Data String!',
-                'mydata2.txt' => 'Another Data String!'
-            );
-
-$this->zip->add_data($data);
-
-$this->zip->download('my_backup.zip'); -
- -

If you would like your compressed data organized into sub-folders, include the path as part of the filename:

- - -$name = 'personal/my_bio.txt';
-$data = 'I was born in an elevator...';
-
-$this->zip->add_data($name, $data); -
- -

The above example will place my_bio.txt inside a folder called personal.

- - -

$this->zip->add_dir()

- -

Permits you to add a directory. Usually this function is unnecessary since you can place your data into folders when -using $this->zip->add_data(), but if you would like to create an empty folder you can do so. Example:

- -$this->zip->add_dir('myfolder'); // Creates a folder called "myfolder" - - - -

$this->zip->read_file()

- -

Permits you to compress a file that already exists somewhere on your server. Supply a file path and the zip class will -read it and add it to the archive:

- - -$path = '/path/to/photo.jpg';

-$this->zip->read_file($path); -

- // Download the file to your desktop. Name it "my_backup.zip"
-$this->zip->download('my_backup.zip'); -
- -

If you would like the Zip archive to maintain the directory structure of the file in it, pass TRUE (boolean) in the -second parameter. Example:

- - - -$path = '/path/to/photo.jpg';

-$this->zip->read_file($path, TRUE); -

- // Download the file to your desktop. Name it "my_backup.zip"
-$this->zip->download('my_backup.zip'); -
- -

In the above example, photo.jpg will be placed inside two folders: path/to/

- - - -

$this->zip->read_dir()

- -

Permits you to compress a folder (and its contents) that already exists somewhere on your server. Supply a file path to the -directory and the zip class will recursively read it and recreate it as a Zip archive. All files contained within the -supplied path will be encoded, as will any sub-folders contained within it. Example:

- - -$path = '/path/to/your/directory/';

-$this->zip->read_dir($path); -

- // Download the file to your desktop. Name it "my_backup.zip"
-$this->zip->download('my_backup.zip'); -
- - - - -

$this->zip->archive()

- -

Writes the Zip-encoded file to a directory on your server. Submit a valid server path ending in the file name. Make sure the -directory is writable (666 or 777 is usually OK). Example:

- -$this->zip->archive('/path/to/folder/myarchive.zip'); // Creates a file named myarchive.zip - - -

$this->zip->download()

- -

Causes the Zip file to be downloaded from your server. The function must be passed the name you would like the zip file called. -Example:

- -$this->zip->download('latest_stuff.zip'); // File will be named "latest_stuff.zip" - -

Note:  Do not display any data in the controller in which you call this function since it sends various server headers -that cause the download to happen and the file to be treated as binary.

- - -

$this->zip->get_zip()

- -

Returns the Zip-compressed file data. Generally you will not need this function unless you want to do something unique with the data. -Example:

- - -$name = 'my_bio.txt';
-$data = 'I was born in an elevator...';
-
-$this->zip->add_data($name, $data);

- -$zip_file = $this->zip->get_zip(); -
- - -

$this->zip->clear_data()

- -

The Zip class caches your zip data so that it doesn't need to recompile the Zip archive for each function you use above. -If, however, you need to create multiple Zips, each with different data, you can clear the cache between calls. Example:

- - -$name = 'my_bio.txt';
-$data = 'I was born in an elevator...';
-
-$this->zip->add_data($name, $data);
-$zip_file = $this->zip->get_zip();
-
-$this->zip->clear_data(); -

- -$name = 'photo.jpg';
-$this->zip->read_file("/path/to/photo.jpg"); // Read the file's contents
-

-$this->zip->download('myphotos.zip'); -
- - - - - - - - - - - - - -
- - - - - - + + + + + +Zip Encoding Class : CodeIgniter User Guide + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +

CodeIgniter User Guide Version 1.7

+
+ + + + + + + + + +
+ + +
+ + + +
+ + +

Zip Encoding Class

+

CodeIgniter's Zip Encoding Class classes permit you to create Zip archives. Archives can be downloaded to your +desktop or saved to a directory.

+ + +

Initializing the Class

+

Like most other classes in CodeIgniter, the Zip class is initialized in your controller using the $this->load->library function:

+ +$this->load->library('zip'); +

Once loaded, the Zip library object will be available using: $this->zip

+ + +

Usage Example

+ +

This example demonstrates how to compress a file, save it to a folder on your server, and download it to your desktop.

+ + +$name = 'mydata1.txt';
+$data = 'A Data String!';
+
+$this->zip->add_data($name, $data);
+
+// Write the zip file to a folder on your server. Name it "my_backup.zip"
+$this->zip->archive('/path/to/directory/my_backup.zip'); +

+ // Download the file to your desktop. Name it "my_backup.zip"
+$this->zip->download('my_backup.zip'); +
+ +

Function Reference

+ +

$this->zip->add_data()

+ +

Permits you to add data to the Zip archive. The first parameter must contain the name you would like +given to the file, the second parameter must contain the file data as a string:

+ + +$name = 'my_bio.txt';
+$data = 'I was born in an elevator...';
+
+$this->zip->add_data($name, $data); +
+ +

You are allowed multiple calls to this function in order to +add several files to your archive. Example:

+ + +$name = 'mydata1.txt';
+$data = 'A Data String!';
+$this->zip->add_data($name, $data);
+
+$name = 'mydata2.txt';
+$data = 'Another Data String!';
+$this->zip->add_data($name, $data);
+
+ +

Or you can pass multiple files using an array:

+ + +$data = array(
+                'mydata1.txt' => 'A Data String!',
+                'mydata2.txt' => 'Another Data String!'
+            );
+
+$this->zip->add_data($data);
+
+$this->zip->download('my_backup.zip'); +
+ +

If you would like your compressed data organized into sub-folders, include the path as part of the filename:

+ + +$name = 'personal/my_bio.txt';
+$data = 'I was born in an elevator...';
+
+$this->zip->add_data($name, $data); +
+ +

The above example will place my_bio.txt inside a folder called personal.

+ + +

$this->zip->add_dir()

+ +

Permits you to add a directory. Usually this function is unnecessary since you can place your data into folders when +using $this->zip->add_data(), but if you would like to create an empty folder you can do so. Example:

+ +$this->zip->add_dir('myfolder'); // Creates a folder called "myfolder" + + + +

$this->zip->read_file()

+ +

Permits you to compress a file that already exists somewhere on your server. Supply a file path and the zip class will +read it and add it to the archive:

+ + +$path = '/path/to/photo.jpg';

+$this->zip->read_file($path); +

+ // Download the file to your desktop. Name it "my_backup.zip"
+$this->zip->download('my_backup.zip'); +
+ +

If you would like the Zip archive to maintain the directory structure of the file in it, pass TRUE (boolean) in the +second parameter. Example:

+ + + +$path = '/path/to/photo.jpg';

+$this->zip->read_file($path, TRUE); +

+ // Download the file to your desktop. Name it "my_backup.zip"
+$this->zip->download('my_backup.zip'); +
+ +

In the above example, photo.jpg will be placed inside two folders: path/to/

+ + + +

$this->zip->read_dir()

+ +

Permits you to compress a folder (and its contents) that already exists somewhere on your server. Supply a file path to the +directory and the zip class will recursively read it and recreate it as a Zip archive. All files contained within the +supplied path will be encoded, as will any sub-folders contained within it. Example:

+ + +$path = '/path/to/your/directory/';

+$this->zip->read_dir($path); +

+ // Download the file to your desktop. Name it "my_backup.zip"
+$this->zip->download('my_backup.zip'); +
+ + + + +

$this->zip->archive()

+ +

Writes the Zip-encoded file to a directory on your server. Submit a valid server path ending in the file name. Make sure the +directory is writable (666 or 777 is usually OK). Example:

+ +$this->zip->archive('/path/to/folder/myarchive.zip'); // Creates a file named myarchive.zip + + +

$this->zip->download()

+ +

Causes the Zip file to be downloaded from your server. The function must be passed the name you would like the zip file called. +Example:

+ +$this->zip->download('latest_stuff.zip'); // File will be named "latest_stuff.zip" + +

Note:  Do not display any data in the controller in which you call this function since it sends various server headers +that cause the download to happen and the file to be treated as binary.

+ + +

$this->zip->get_zip()

+ +

Returns the Zip-compressed file data. Generally you will not need this function unless you want to do something unique with the data. +Example:

+ + +$name = 'my_bio.txt';
+$data = 'I was born in an elevator...';
+
+$this->zip->add_data($name, $data);

+ +$zip_file = $this->zip->get_zip(); +
+ + +

$this->zip->clear_data()

+ +

The Zip class caches your zip data so that it doesn't need to recompile the Zip archive for each function you use above. +If, however, you need to create multiple Zips, each with different data, you can clear the cache between calls. Example:

+ + +$name = 'my_bio.txt';
+$data = 'I was born in an elevator...';
+
+$this->zip->add_data($name, $data);
+$zip_file = $this->zip->get_zip();
+
+$this->zip->clear_data(); +

+ +$name = 'photo.jpg';
+$this->zip->read_file("/path/to/photo.jpg"); // Read the file's contents
+

+$this->zip->download('myphotos.zip'); +
+ + + + + + + + + + + + + +
+ + + + + + \ No newline at end of file -- cgit v1.2.3-24-g4f1b