Archive_Zip
[ class tree: Archive_Zip ] [ index: Archive_Zip ] [ all elements ]

Class: Archive_Zip

Source Location: /Archive_Zip-0.1.2/Archive/Zip.php

Class Overview


Class for manipulating zip archive files


Author(s):

Version:

  • $Revision: 302924 $

Methods


Inherited Variables

Inherited Methods


Class Details

[line 101]
Class for manipulating zip archive files

A class which provided common methods to manipulate ZIP formatted archive files. It provides creation, extraction, deletion and add features.



[ Top ]


Method Detail

Archive_Zip (Constructor)   [line 137]

Archive_Zip Archive_Zip( string $p_zipname)

Archive_Zip Class constructor. This flavour of the constructor only declare a new Archive_Zip object, identifying it by the name of the zip file.
  • Access: public

Parameters:

string   $p_zipname     The name of the zip archive to create

[ Top ]

add   [line 249]

mixed add( mixed $p_filelist, [mixed $p_params = 0])

This method add files or directory in an existing Zip Archive.

If the Zip Archive does not exist it is created. The files and directories to add are indicated in $p_filelist. When a directory is in the list, the directory and its content is added in the archive. The methods takes a variable list of parameters in $p_params. The supported parameters for this method are : 'add_path' : Add a path to the archived files. 'remove_path' : Remove the specified 'root' path of the archived files. 'remove_all_path' : Remove all the path of the archived files. 'no_compression' : The archived files will not be compressed. 'callback_pre_add' : A callback function that will be called before each entry archiving. 'callback_post_add' : A callback function that will be called after each entry archiving.

  • Return: An array of file description on success,
    1. on an unrecoverable failure, an error code is logged.
  • Access: public

Parameters:

mixed   $p_filelist     The list of the files or folders to add. It can be a string with filenames separated by a comma, or an array of filenames.
mixed   $p_params     An array of variable parameters and values.

[ Top ]

create   [line 183]

mixed create( mixed $p_filelist, [mixed $p_params = 0])

This method creates a Zip Archive with the filename set with the constructor.

The files and directories indicated in $p_filelist are added in the archive. When a directory is in the list, the directory and its content is added in the archive. The methods takes a variable list of parameters in $p_params. The supported parameters for this method are : 'add_path' : Add a path to the archived files. 'remove_path' : Remove the specified 'root' path of the archived files. 'remove_all_path' : Remove all the path of the archived files. 'no_compression' : The archived files will not be compressed.

  • Return: An array of file description on success, an error code on error

Parameters:

mixed   $p_filelist     The list of the files or folders to add. It can be a string with filenames separated by a comma, or an array of filenames.
mixed   $p_params     An array of variable parameters and values.

[ Top ]

delete   [line 452]

mixed delete( mixed $p_params)

This methods delete archive entries in the zip archive.

Notice that at least one filtering rule (set by the variable parameter list) must be set. Also notice that if you delete a folder entry, only the folder entry is deleted, not all the files bellonging to this folder. The supported variable parameters for this method are : 'by_name' : It can be a string with file/dir names separated by ',', or an array of file/dir names to delete from the archive. 'by_index' : A string with range of indexes separated by ',', (sample "1,3-5,12"). 'by_preg' : A regular expression (preg) that must match the extracted filename.

  • Return: An array of file description on success,
    1. on an unrecoverable failure, an error code is logged.

Parameters:

mixed   $p_params     An array of variable parameters and values.

[ Top ]

duplicate   [line 556]

integer duplicate( mixed $p_archive)

This method creates an archive by copying the content of an other one.

If the archive already exist, it is replaced by the new one without any warning.

  • Return: 1 on success, 0 on failure.

Parameters:

mixed   $p_archive     It can be a valid Archive_Zip object or the filename of a valid zip archive.

[ Top ]

errorCode   [line 633]

integer errorCode( )

Method that gives the lastest error code.
  • Return: The error code value.
  • Access: public

[ Top ]

errorInfo   [line 688]

string errorInfo( [boolean $p_full = false])

This method returns the description associated with the latest error.
  • Return: The error description.
  • Access: public

Parameters:

boolean   $p_full     If set to true gives the description with the error code, the name and the description. If set to false gives only the description and the error code.

[ Top ]

errorName   [line 648]

string errorName( [boolean $p_with_code = false])

This method gives the latest error code name.
  • Return: The error name.
  • Access: public

Parameters:

boolean   $p_with_code     If true, gives the name and the int value.

[ Top ]

extract   [line 391]

mixed extract( [mixed $p_params = 0])

This method extract the files and folders which are in the zip archive.

It can extract all the archive or a part of the archive by using filter feature (extract by name, by index, by preg). The extraction can occur in the current path or an other path. All the advanced features are activated by the use of variable parameters. The return value is an array of entry descriptions which gives information on extracted files (See listContent()). The method may return a success value (an array) even if some files are not correctly extracted (see the file status in listContent()). The supported variable parameters for this method are : 'add_path' : Path where the files and directories are to be extracted 'remove_path' : First part ('root' part) of the memorized path (if similar) to remove while extracting. 'remove_all_path' : Remove all the memorized path while extracting. 'extract_as_string' : 'set_chmod' : After the extraction of the file the indicated mode will be set. 'by_name' : It can be a string with file/dir names separated by ',', or an array of file/dir names to extract from the archive. 'by_index' : A string with range of indexes separated by ',', (sample "1,3-5,12"). 'by_preg' : A regular expression (preg) that must match the extracted filename. 'callback_pre_extract' : A callback function that will be called before each entry extraction. 'callback_post_extract' : A callback function that will be called after each entry extraction.

  • Return: An array of file description on success,
    1. on an unrecoverable failure, an error code is logged.

Parameters:

mixed   $p_params     An array of variable parameters and values.

[ Top ]

listContent   [line 336]

mixed listContent( )

This method gives the names and properties of the files and directories which are present in the zip archive.

The properties of each entries in the list are : filename : Name of the file. For create() or add() it's the filename given by the user. For an extract() it's the filename of the extracted file. stored_filename : Name of the file / directory stored in the archive. size : Size of the stored file. compressed_size : Size of the file's data compressed in the archive (without the zip headers overhead) mtime : Last known modification date of the file (UNIX timestamp) comment : Comment associated with the file folder : true | false (indicates if the entry is a folder) index : index of the file in the archive (-1 when not available) status : status of the action on the entry (depending of the action) : Values are : ok : OK ! filtered : the file/dir was not extracted (filtered by user) already_a_directory : the file can't be extracted because a directory with the same name already exists write_protected : the file can't be extracted because a file with the same name already exists and is write protected newer_exist : the file was not extracted because a newer file already exists path_creation_fail : the file is not extracted because the folder does not exists and can't be created write_error : the file was not extracted because there was a error while writing the file read_error : the file was not extracted because there was a error while reading the file invalid_header : the file was not extracted because of an archive format error (bad file header) Note that each time a method can continue operating when there is an error on a single file, the error is only logged in the file status.

  • Return: An array of file description on success,
    1. on an unrecoverable failure, an error code is logged.
  • Access: public

[ Top ]

merge   [line 596]

integer merge( mixed $p_archive_to_add)

This method merge a valid zip archive at the end of the archive identified by the Archive_Zip object.

If the archive ($this) does not exist, the merge becomes a duplicate. If the archive to add does not exist, the merge is a success.

  • Return: 1 on success, 0 on failure.

Parameters:

mixed   $p_archive_to_add     It can be a valid Archive_Zip object or the filename of a valid zip archive.

[ Top ]

properties   [line 500]

mixed properties( )

This method gives the global properties of the archive.

The properties are : nb : Number of files in the archive comment : Comment associated with the archive file status : not_exist, ok

  • Return: An array with the global properties or 0 on error.

[ Top ]


Documentation generated on Sat, 30 Jul 2011 11:00:05 +0000 by phpDocumentor 1.4.3. PEAR Logo Copyright © PHP Group 2004.