JArchiveZip
Extends \JObjectZIP format adapter for the JArchive class
The ZIP compression code is partially based on code from: Eric Mueller [email protected] http://www.zend.com/codex.php?id=535&single=1
Deins125 [email protected] http://www.zend.com/codex.php?id=470&single=1
The ZIP compression date code is partially based on code from Peter Listiak [email protected]
This class is inspired from and draws heavily in code and concept from the Compress package of The Horde Project http://www.horde.org
contributor |
Chuck Hagenbuch [email protected] Michael Slusarz [email protected] Michael Cochrane [email protected] |
---|---|
package |
Joomla.Platform |
subpackage |
FileSystem |
since |
11.1 |
Methods
__construct
Class constructor, overridden in descendant classes.
__construct(mixed $properties = null)
since |
11.1 |
---|
Arguments
- $properties
mixed
Either and associative array or another object to set the initial properties of the object.
__toString
Magic method to convert the object to a string gracefully.
__toString() : string
since |
11.1 |
---|---|
deprecated |
12.3 Classes should provide their own __toString() implementation. |
Response
string
The classname.
_addToZIPFile
Adds a "file" to the ZIP archive.
_addToZIPFile( &$file, &$contents, &$ctrldir) : void
since |
11.1 |
---|---|
todo |
Review and finish implementation |
Arguments
- $file
- $contents
- $ctrldir
_createZIPFile
Creates the ZIP file.
_createZIPFile( &$contents, &$ctrlDir, string $path) : boolean
Official ZIP file format: http://www.pkware.com/appnote.txt
since |
11.1 |
---|---|
todo |
Review and finish implementation |
Arguments
- $contents
- $ctrlDir
- $path
string
The path to store the archive.
Response
boolean
True if successful
_extract
Extract a ZIP compressed file to a given path using a php based algorithm that only requires zlib support
_extract(string $archive, string $destination, array $options) : boolean
since |
11.1 |
---|
Arguments
- $archive
string
Path to ZIP archive to extract.- $destination
string
Path to extract archive into.- $options
array
Extraction options [unused].
Response
boolean
True if successful
_extractNative
Extract a ZIP compressed file to a given path using native php api calls for speed
_extractNative(string $archive, string $destination, array $options) : boolean
since |
11.1 |
---|
Arguments
- $archive
string
Path to ZIP archive to extract- $destination
string
Path to extract archive into- $options
array
Extraction options [unused]
Response
boolean
True if successful
_getFileData
Returns the file data for a file by offsest in the ZIP archive
_getFileData(integer $key) : string
since |
11.1 |
---|
Arguments
- $key
integer
The position of the file in the archive.
Response
string
Uncompressed file data buffer.
_readZipInfo
Get the list of files/data from a ZIP archive buffer.
_readZipInfo( &$data) : boolean
KEY: Position in zipfile VALUES: 'attr' -- File attributes 'crc' -- CRC checksum 'csize' -- Compressed file size 'date' -- File modification time 'name' -- Filename 'method'-- Compression method 'size' -- Original file size 'type' -- File type
since |
11.1 |
---|
Arguments
- $data
Response
boolean
True on success.
_unix2DOSTime
Converts a UNIX timestamp to a 4-byte DOS date and time format (date in high 2-bytes, time in low 2-bytes allowing magnitude comparison).
_unix2DOSTime(integer $unixtime = null) : integer
since |
11.1 |
---|
Arguments
- $unixtime
integer
The current UNIX timestamp.
Response
integer
The current date in a 4-byte DOS format.
checkZipData
Checks to see if the data is a valid ZIP file.
checkZipData( &$data) : boolean
since |
11.1 |
---|
Arguments
- $data
Response
boolean
True if valid, false if invalid.
create
Create a ZIP compressed file from an array of file data.
create(string $archive, array $files, array $options = array()) : boolean
since |
11.1 |
---|---|
todo |
Finish Implementation |
Arguments
- $archive
string
Path to save archive.- $files
array
Array of files to add to archive.- $options
array
Compression options (unused).
Response
boolean
True if successful.
def
Sets a default value if not alreay assigned
def(string $property, mixed $default = null) : mixed
since |
11.1 |
---|
Arguments
- $property
string
The name of the property.- $default
mixed
The default value.
Response
mixed
extract
Extract a ZIP compressed file to a given path
extract(string $archive, string $destination, array $options = array()) : boolean
since |
11.1 |
---|
Arguments
- $archive
string
Path to ZIP archive to extract- $destination
string
Path to extract archive into- $options
array
Extraction options [unused]
Response
boolean
True if successful
get
Returns a property of the object or the default value if the property is not set.
get(string $property, mixed $default = null) : mixed
since |
11.1 |
---|---|
see | \JObject::getProperties() |
Arguments
- $property
string
The name of the property.- $default
mixed
The default value.
Response
mixed
The value of the property.
getError
Get the most recent error message.
getError(integer $i = null, boolean $toString = true) : string
since |
11.1 |
---|---|
see | \JError |
deprecated |
12.3 JError has been deprecated |
Arguments
- $i
integer
Option error index.- $toString
boolean
Indicates if JError objects should return their error message.
Response
string
Error message
getErrors
Return all errors, if any.
getErrors() : array
since |
11.1 |
---|---|
see | \JError |
deprecated |
12.3 JError has been deprecated |
Response
array
Array of error messages or JErrors.
getProperties
Returns an associative array of object properties.
getProperties(boolean $public = true) : array
since |
11.1 |
---|---|
see | \JObject::get() |
Arguments
- $public
boolean
If true, returns only the public properties.
Response
array
hasNativeSupport
Method to determine if the server has native zip support for faster handling
hasNativeSupport() : boolean
since |
11.1 |
---|
Response
boolean
True if php has native ZIP support
isSupported
Tests whether this adapter can unpack files on this computer.
isSupported() : boolean
since |
11.3 |
---|
Response
boolean
True if supported
set
Modifies a property of the object, creating it if it does not already exist.
set(string $property, mixed $value = null) : mixed
since |
11.1 |
---|
Arguments
- $property
string
The name of the property.- $value
mixed
The value of the property to set.
Response
mixed
Previous value of the property.
setError
Add an error message.
setError(string $error) : void
since |
11.1 |
---|---|
see | \JError |
deprecated |
12.3 JError has been deprecated |
Arguments
- $error
string
Error message.
setProperties
Set the object properties based on a named array/hash.
setProperties(mixed $properties) : boolean
since |
11.1 |
---|---|
see | \JObject::set() |
Arguments
- $properties
mixed
Either an associative array or another object.
Response
boolean
toString
Converts the object to a string (the class name).
toString() : string
Properties
_methods
ZIP compression methods.
since |
11.1 |
---|
Type(s)
array
_ctrlDirHeader
Beginning of central directory record.
since |
11.1 |
---|
Type(s)
string
_ctrlDirEnd
End of central directory record.
since |
11.1 |
---|
Type(s)
string
_fileHeader
Beginning of file contents.
since |
11.1 |
---|
Type(s)
string
_data
ZIP file data buffer
since |
11.1 |
---|
Type(s)
string
_metadata
ZIP file metadata array
since |
11.1 |
---|
Type(s)
array
_errors
An array of error messages or Exception objects.