Open Journal Systems
3.3.0
|
Public Member Functions | |
__construct ($p_tarname, $p_compress=null, $buffer_length=512) | |
__destruct () | |
_addFile ($p_filename, &$p_header, $p_add_dir, $p_remove_dir, $v_stored_filename=null) | |
_addList ($p_list, $p_add_dir, $p_remove_dir) | |
_addString ($p_filename, $p_string, $p_datetime=false, $p_params=array()) | |
_append ($p_filelist, $p_add_dir='', $p_remove_dir='') | |
_cleanFile () | |
_close () | |
_dirCheck ($p_dir) | |
_error ($p_message) | |
_extractList ( $p_path, &$p_list_detail, $p_mode, $p_file_list, $p_remove_path, $p_preserve=false, $p_symlinks=true) | |
_isArchive ($p_filename=null) | |
_jumpBlock ($p_len=null) | |
_openAppend () | |
_openRead () | |
_openReadWrite () | |
_openWrite () | |
_readBlock () | |
_readHeader ($v_binary_data, &$v_header) | |
_readLongHeader (&$v_header) | |
_translateWinPath ($p_path, $p_remove_disk_letter=true) | |
_warning ($p_message) | |
_writeBlock ($p_binary_data, $p_len=null) | |
_writeFooter () | |
_writeHeader ($p_filename, $p_stored_filename) | |
_writeHeaderBlock ( $p_filename, $p_size, $p_mtime=0, $p_perms=0, $p_type='', $p_uid=0, $p_gid=0) | |
_writeLongHeader ($p_filename, $is_link=false) | |
add ($p_filelist) | |
addModify ($p_filelist, $p_add_dir, $p_remove_dir='') | |
addString ($p_filename, $p_string, $p_datetime=false, $p_params=array()) | |
create ($p_filelist) | |
createModify ($p_filelist, $p_add_dir, $p_remove_dir='') | |
extract ($p_path='', $p_preserve=false, $p_symlinks=true) | |
extractInString ($p_filename) | |
extractList ($p_filelist, $p_path='', $p_remove_path='', $p_preserve=false, $p_symlinks=true) | |
extractModify ($p_path, $p_remove_path, $p_preserve=false, $p_symlinks=true) | |
listContent () | |
setAttribute () | |
setIgnoreList ($list) | |
setIgnoreRegexp ($regexp) | |
![]() | |
__call ($method, $arguments) | |
__construct ($error_class=null) | |
_checkDelExpect ($error_code) | |
_PEAR () | |
delExpect ($error_code) | |
expectError ($code=' *') | |
PEAR ($error_class=null) | |
popExpect () | |
Data Fields | |
$_compress = false | |
$_compress_type = 'none' | |
$_file = 0 | |
$_fmt = '' | |
$_ignore_regexp = '' | |
$_separator = ' ' | |
$_tarname = '' | |
$_temp_tarname = '' | |
$error_object = null | |
![]() | |
$_debug = false | |
$_default_error_handler = '' | |
$_default_error_mode = null | |
$_default_error_options = null | |
$_error_class = 'PEAR_Error' | |
$_expected_errors = array() | |
Protected Attributes | |
$buffer_length | |
Additional Inherited Members | |
![]() | |
static | __callStatic ($method, $arguments) |
static | getSourceDateEpoch () |
static & | getStaticProperty ($class, $var) |
static | isError ($data, $code=null) |
static | loadExtension ($ext) |
static | registerShutdownFunc ($func, $args=array()) |
static | staticPopErrorHandling () |
static | staticPushErrorHandling ($mode, $options=null) |
![]() | |
static | _popErrorHandling ($object) |
static | _pushErrorHandling ($object, $mode, $options=null) |
static | _raiseError ($object, $message=null, $code=null, $mode=null, $options=null, $userinfo=null, $error_class=null, $skipmsg=false) |
static | _setErrorHandling ( $object, $mode=null, $options=null) |
static | _throwError ($object, $message=null, $code=null, $userinfo=null) |
![]() | |
static | $bivalentMethods |
Archive_Tar::__construct | ( | $p_tarname, | |
$p_compress = null , |
|||
$buffer_length = 512 |
|||
) |
Archive_Tar Class constructor. This flavour of the constructor only declare a new Archive_Tar object, identifying it by the name of the tar file. If the compress argument is set the tar will be read or created as a gzip or bz2 compressed TAR file.
string | $p_tarname | The name of the tar archive to create |
string | $p_compress | can be null, 'gz', 'bz2' or 'lzma2'. This parameter indicates if gzip, bz2 or lzma2 compression is required. For compatibility reason the boolean value 'true' means 'gz'. |
int | $buffer_length | Length of the read buffer in bytes |
Definition at line 180 of file Tar.php.
References $buffer_length, _error(), and PEAR\loadExtension().
Archive_Tar::_addFile | ( | $p_filename, | |
& | $p_header, | ||
$p_add_dir, | |||
$p_remove_dir, | |||
$v_stored_filename = null |
|||
) |
string | $p_filename | |
mixed | $p_header | |
string | $p_add_dir | |
string | $p_remove_dir | |
null | $v_stored_filename |
Definition at line 1247 of file Tar.php.
References $buffer_length, _error(), _isArchive(), _translateWinPath(), _warning(), _writeBlock(), and _writeHeader().
Referenced by _addList().
Archive_Tar::_addList | ( | $p_list, | |
$p_add_dir, | |||
$p_remove_dir | |||
) |
array | $p_list | |
string | $p_add_dir | |
string | $p_remove_dir |
Definition at line 1161 of file Tar.php.
References _addFile(), _error(), _translateWinPath(), and _warning().
Referenced by _append(), and createModify().
Archive_Tar::_addString | ( | $p_filename, | |
$p_string, | |||
$p_datetime = false , |
|||
$p_params = array() |
|||
) |
string | $p_filename | |
string | $p_string | |
bool | $p_datetime | |
array | $p_params |
Definition at line 1333 of file Tar.php.
References _error(), _translateWinPath(), _writeBlock(), and _writeHeaderBlock().
Referenced by addString().
Archive_Tar::_append | ( | $p_filelist, | |
$p_add_dir = '' , |
|||
$p_remove_dir = '' |
|||
) |
$p_filelist | ||
string | $p_add_dir | |
string | $p_remove_dir |
Definition at line 2399 of file Tar.php.
References _addList(), _close(), _openAppend(), and _writeFooter().
Referenced by addModify().
Archive_Tar::_cleanFile | ( | ) |
Definition at line 997 of file Tar.php.
References _close().
Referenced by createModify().
Archive_Tar::_close | ( | ) |
Definition at line 956 of file Tar.php.
References _error().
Referenced by __destruct(), _append(), _cleanFile(), addString(), createModify(), extractInString(), extractList(), extractModify(), and listContent().
Archive_Tar::_dirCheck | ( | $p_dir | ) |
Check if a directory exists and create it (including parent dirs) if not.
string | $p_dir | directory to check |
Definition at line 2422 of file Tar.php.
References _error().
Referenced by _extractList().
Archive_Tar::_error | ( | $p_message | ) |
string | $p_message |
Definition at line 772 of file Tar.php.
Referenced by __construct(), _addFile(), _addList(), _addString(), _close(), _dirCheck(), _extractList(), _jumpBlock(), _openRead(), _openReadWrite(), _openWrite(), _readBlock(), _readHeader(), _readLongHeader(), _writeBlock(), addModify(), createModify(), extractList(), and setAttribute().
Archive_Tar::_extractList | ( | $p_path, | |
& | $p_list_detail, | ||
$p_mode, | |||
$p_file_list, | |||
$p_remove_path, | |||
$p_preserve = false , |
|||
$p_symlinks = true |
|||
) |
string | $p_path | |
string | $p_list_detail | |
string | $p_mode | |
string | $p_file_list | |
string | $p_remove_path | |
bool | $p_preserve | |
bool | $p_symlinks |
Definition at line 1958 of file Tar.php.
References _dirCheck(), _error(), _isArchive(), _jumpBlock(), _readBlock(), _readHeader(), _readLongHeader(), _translateWinPath(), and _warning().
Referenced by extractList(), extractModify(), and listContent().
Archive_Tar::_isArchive | ( | $p_filename = null | ) |
string | $p_filename |
Definition at line 789 of file Tar.php.
References $_tarname.
Referenced by _addFile(), _extractList(), addModify(), and addString().
Archive_Tar::_jumpBlock | ( | $p_len = null | ) |
null | $p_len |
Definition at line 1105 of file Tar.php.
References _error(), and _readBlock().
Referenced by _extractList().
Archive_Tar::_openAppend | ( | ) |
Archive_Tar::_openRead | ( | ) |
Definition at line 839 of file Tar.php.
References $_tarname, $_temp_tarname, and _error().
Referenced by extractInString(), extractList(), extractModify(), and listContent().
Archive_Tar::_openReadWrite | ( | ) |
Archive_Tar::_openWrite | ( | ) |
Definition at line 801 of file Tar.php.
References _error().
Referenced by addString(), and createModify().
Archive_Tar::_readBlock | ( | ) |
Definition at line 1073 of file Tar.php.
References _error().
Referenced by _extractList(), _jumpBlock(), and _readLongHeader().
Archive_Tar::_readHeader | ( | $v_binary_data, | |
& | $v_header | ||
) |
mixed | $v_binary_data | |
mixed | $v_header |
Definition at line 1698 of file Tar.php.
References _error().
Referenced by _extractList(), and _readLongHeader().
Archive_Tar::_readLongHeader | ( | & | $v_header | ) |
$v_header |
Definition at line 1843 of file Tar.php.
References _error(), _readBlock(), and _readHeader().
Referenced by _extractList().
Archive_Tar::_translateWinPath | ( | $p_path, | |
$p_remove_disk_letter = true |
|||
) |
$p_path | ||
bool | $p_remove_disk_letter |
Definition at line 2501 of file Tar.php.
Referenced by _addFile(), _addList(), _addString(), and _extractList().
Archive_Tar::_warning | ( | $p_message | ) |
string | $p_message |
Definition at line 780 of file Tar.php.
Referenced by _addFile(), _addList(), and _extractList().
Archive_Tar::_writeBlock | ( | $p_binary_data, | |
$p_len = null |
|||
) |
mixed | $p_binary_data | |
integer | $p_len |
Definition at line 1020 of file Tar.php.
References _error().
Referenced by _addFile(), _addString(), _writeFooter(), _writeHeader(), _writeHeaderBlock(), and _writeLongHeader().
Archive_Tar::_writeFooter | ( | ) |
Definition at line 1145 of file Tar.php.
References _writeBlock().
Referenced by _append(), addString(), and createModify().
Archive_Tar::_writeHeader | ( | $p_filename, | |
$p_stored_filename | |||
) |
string | $p_filename | |
string | $p_stored_filename |
Definition at line 1385 of file Tar.php.
References _writeBlock(), and _writeLongHeader().
Referenced by _addFile().
Archive_Tar::_writeHeaderBlock | ( | $p_filename, | |
$p_size, | |||
$p_mtime = 0 , |
|||
$p_perms = 0 , |
|||
$p_type = '' , |
|||
$p_uid = 0 , |
|||
$p_gid = 0 |
|||
) |
string | $p_filename | |
int | $p_size | |
int | $p_mtime | |
int | $p_perms | |
string | $p_type | |
int | $p_uid | |
int | $p_gid |
Definition at line 1508 of file Tar.php.
References _writeBlock(), and _writeLongHeader().
Referenced by _addString().
Archive_Tar::_writeLongHeader | ( | $p_filename, | |
$is_link = false |
|||
) |
string | $p_filename |
Definition at line 1617 of file Tar.php.
References _writeBlock().
Referenced by _writeHeader(), and _writeHeaderBlock().
Archive_Tar::add | ( | $p_filelist | ) |
This method add the files / directories that are listed in $p_filelist in the archive. If the archive does not exist it is created. The method return false and a PEAR error text. The files and directories listed are only added at the end of the archive, even if a file with the same name is already archived. See also createModify() method for more details.
array | $p_filelist | An array of filenames and directory names, or a single string with names separated by a single blank space. |
Definition at line 337 of file Tar.php.
References addModify().
Archive_Tar::addModify | ( | $p_filelist, | |
$p_add_dir, | |||
$p_remove_dir = '' |
|||
) |
This method add the files / directories listed in $p_filelist at the end of the existing archive. If the archive does not yet exists it is created. The $p_filelist parameter can be an array of string, each string representing a filename or a directory name with their path if needed. It can also be a single string with names separated by a single blank. The path indicated in $p_remove_dir will be removed from the memorized path of each file / directory listed when this path exists. By default nothing is removed (empty path '') The path indicated in $p_add_dir will be added at the beginning of the memorized path of each file / directory listed. However it can be set to empty ''. The adding of a path is done after the removing of path. The path add/remove ability enables the user to prepare an archive for extraction in a different path than the origin files are. If a file/dir is already in the archive it will only be added at the end of the archive. There is no update of the existing archived file/dir. However while extracting the archive, the last file will replace the first one. This results in a none optimization of the archive size. If a file/dir does not exist the file/dir is ignored. However an error text is send to PEAR error. If a file/dir is not readable the file/dir is ignored. However an error text is send to PEAR error.
array | $p_filelist | An array of filenames and directory names, or a single string with names separated by a single blank space. |
string | $p_add_dir | A string which contains a path to be added to the memorized path of each element in the list. |
string | $p_remove_dir | A string which contains a path to be removed from the memorized path of each element in the list, when relevant. |
Definition at line 478 of file Tar.php.
References _append(), _error(), _isArchive(), and createModify().
Referenced by add().
Archive_Tar::addString | ( | $p_filename, | |
$p_string, | |||
$p_datetime = false , |
|||
$p_params = array() |
|||
) |
This method add a single string as a file at the end of the existing archive. If the archive does not yet exists it is created.
string | $p_filename | A string which contains the full filename path that will be associated with the string. |
string | $p_string | The content of the file added in the archive. |
bool | int | $p_datetime | A custom date/time (unix timestamp) for the file (optional). |
array | $p_params | An array of optional params: stamp => the datetime (replaces datetime above if it exists) mode => the permissions on the file (600 by default) type => is this a link? See the tar specification for details. (default = regular file) uid => the user ID of the file (default = 0 = root) gid => the group ID of the file (default = 0 = root) |
Definition at line 531 of file Tar.php.
References _addString(), _close(), _isArchive(), _openAppend(), _openWrite(), and _writeFooter().
Archive_Tar::create | ( | $p_filelist | ) |
This method creates the archive file and add the files / directories that are listed in $p_filelist. If a file with the same name exist and is writable, it is replaced by the new tar. The method return false and a PEAR error text. The $p_filelist parameter can be an array of string, each string representing a filename or a directory name with their path if needed. It can also be a single string with names separated by a single blank. For each directory added in the archive, the files and sub-directories are also added. See also createModify() method for more details.
array | $p_filelist | An array of filenames and directory names, or a single string with names separated by a single blank space. |
Definition at line 316 of file Tar.php.
References createModify().
Archive_Tar::createModify | ( | $p_filelist, | |
$p_add_dir, | |||
$p_remove_dir = '' |
|||
) |
This method creates the archive file and add the files / directories that are listed in $p_filelist. If the file already exists and is writable, it is replaced by the new tar. It is a create and not an add. If the file exists and is read-only or is a directory it is not replaced. The method return false and a PEAR error text. The $p_filelist parameter can be an array of string, each string representing a filename or a directory name with their path if needed. It can also be a single string with names separated by a single blank. The path indicated in $p_remove_dir will be removed from the memorized path of each file / directory listed when this path exists. By default nothing is removed (empty path '') The path indicated in $p_add_dir will be added at the beginning of the memorized path of each file / directory listed. However it can be set to empty ''. The adding of a path is done after the removing of path. The path add/remove ability enables the user to prepare an archive for extraction in a different path than the origin files are. See also addModify() method for file adding properties.
array | $p_filelist | An array of filenames and directory names, or a single string with names separated by a single blank space. |
string | $p_add_dir | A string which contains a path to be added to the memorized path of each element in the list. |
string | $p_remove_dir | A string which contains a path to be removed from the memorized path of each element in the list, when relevant. |
Definition at line 406 of file Tar.php.
References _addList(), _cleanFile(), _close(), _error(), _openWrite(), and _writeFooter().
Referenced by addModify(), and create().
Archive_Tar::extract | ( | $p_path = '' , |
|
$p_preserve = false , |
|||
$p_symlinks = true |
|||
) |
string | $p_path | |
bool | $p_preserve | |
bool | $p_symlinks |
Definition at line 348 of file Tar.php.
References extractModify().
Archive_Tar::extractInString | ( | $p_filename | ) |
This method extract from the archive one file identified by $p_filename. The return value is a string with the file content, or NULL on error.
string | $p_filename | The path of the file to extract in a string. |
Definition at line 625 of file Tar.php.
References _close(), and _openRead().
Archive_Tar::extractList | ( | $p_filelist, | |
$p_path = '' , |
|||
$p_remove_path = '' , |
|||
$p_preserve = false , |
|||
$p_symlinks = true |
|||
) |
This method extract from the archive only the files indicated in the $p_filelist. These files are extracted in the current directory or in the directory indicated by the optional $p_path parameter. If indicated the $p_remove_path can be used in the same way as it is used in extractModify() method.
array | $p_filelist | An array of filenames and directory names, or a single string with names separated by a single blank space. |
string | $p_path | The path of the directory where the files/dir need to by extracted. |
string | $p_remove_path | Part of the memorized path that can be removed if present at the beginning of the file/dir path. |
boolean | $p_preserve | Preserve user/group ownership of files |
boolean | $p_symlinks | Allow symlinks. |
Definition at line 658 of file Tar.php.
References _close(), _error(), _extractList(), and _openRead().
Archive_Tar::extractModify | ( | $p_path, | |
$p_remove_path, | |||
$p_preserve = false , |
|||
$p_symlinks = true |
|||
) |
This method extract all the content of the archive in the directory indicated by $p_path. When relevant the memorized path of the files/dir can be modified by removing the $p_remove_path path at the beginning of the file/dir path. While extracting a file, if the directory path does not exists it is created. While extracting a file, if the file already exists it is replaced without looking for last modification date. While extracting a file, if the file already exists and is write protected, the extraction is aborted. While extracting a file, if a directory with the same name already exists, the extraction is aborted. While extracting a directory, if a file with the same name already exists, the extraction is aborted. While extracting a file/directory if the destination directory exist and is write protected, or does not exist but can not be created, the extraction is aborted. If after extraction an extracted file does not show the correct stored file size, the extraction is aborted. When the extraction is aborted, a PEAR error text is set and false is returned. However the result can be a partial extraction that may need to be manually cleaned.
string | $p_path | The path of the directory where the files/dir need to by extracted. |
string | $p_remove_path | Part of the memorized path that can be removed if present at the beginning of the file/dir path. |
boolean | $p_preserve | Preserve user/group ownership of files |
boolean | $p_symlinks | Allow symlinks. |
Definition at line 596 of file Tar.php.
References _close(), _extractList(), and _openRead().
Referenced by extract().
Archive_Tar::listContent | ( | ) |
Definition at line 356 of file Tar.php.
References _close(), _extractList(), and _openRead().
Archive_Tar::setAttribute | ( | ) |
Archive_Tar::setIgnoreList | ( | $list | ) |
This method sets the regular expression for ignoring all files and directories matching the filenames in the array list at import, for example: $arch->setIgnoreList(array('CVS', '.svn', 'bin/tool'));
array | $list | a list of file or directory names to ignore |
@access public
Definition at line 762 of file Tar.php.
References setIgnoreRegexp().
Archive_Tar::setIgnoreRegexp | ( | $regexp | ) |
This method sets the regular expression for ignoring files and directories at import, for example: $arch->setIgnoreRegexp("#CVS|\.svn#");
string | $regexp | regular expression defining which files or directories to ignore |
Definition at line 748 of file Tar.php.
Referenced by setIgnoreList().
boolean Archive_Tar::$_compress = false |
string Archive_Tar::$_compress_type = 'none' |
string Archive_Tar::$_ignore_regexp = '' |
string Archive_Tar::$_tarname = '' |
string Archive_Tar::$_temp_tarname = '' |
Local Tar name of a remote Tar (http:// or ftp://)
Definition at line 128 of file Tar.php.
Referenced by _openRead().
|
protected |
Length of the read buffer in bytes
Definition at line 162 of file Tar.php.
Referenced by __construct(), and _addFile().
object Archive_Tar::$error_object = null |
PEAR_Error object