kjdev / lz4
A compression/decompression with LZ4
Installs: 149
Dependents: 0
Suggesters: 0
Security: 0
Stars: 153
Watchers: 14
Forks: 39
Open Issues: 11
Language:C
Type:php-ext
Ext name:ext-lz4
pkg:composer/kjdev/lz4
Requires
- php: >= 5.6.0
README
This extension allows LZ4.
Documentation for LZ4 can be found at » https://github.com/Cyan4973/lz4.
Build from sources
% git clone --recursive --depth=1 https://github.com/kjdev/php-ext-lz4.git
% cd php-ext-lz4
% phpize
% ./configure
% make
% make install
To use the system library
% ./configure --with-lz4-includedir=/usr
Distribution binary packages
Fedora / CentOS / RHEL
RPM packages of this extension are available in » Remi's RPM repository and are named php-lz4.
Debian
DEB packages of this extension are available in » Ondřej Surý's DEB repository and are named php-lz4.
Installation via PIE
pie install kjdev/lz4
Configuration
php.ini:
extension=lz4.so
Function
- lz4_compress — LZ4 compression (block format)
- lz4_uncompress — LZ4 decompression (block format)
- lz4_compress_frame — LZ4 compression (frame format)
- lz4_uncompress_frame — LZ4 decompression (frame format)
lz4_compress — LZ4 compression
Description
string lz4_compress ( string $data [ , int $level = 0 , string $extra = NULL ] )
LZ4 compression.
Parameters
-
data
The string to compress.
-
level
The level of compression (1-12, Recommended values are between 4 and 9). (Default to 0, Not High Compression Mode.)
-
extra
Prefix to compressed data.
Return Values
Returns the compressed data or FALSE if an error occurred.
lz4_uncompress — LZ4 decompression
Description
string lz4_uncompress ( string $data [ , long $maxsize = -1 , long $offset = -1 ] )
LZ4 decompression.
Parameters
-
data
The compressed string.
-
maxsize
Allocate size output data.
-
offset
Offset to decompressed data.
Return Values
Returns the decompressed data or FALSE if an error occurred.
lz4_compress_frame — LZ4 compression (frame format)
Description
string lz4_compress_frame ( string $data [ , int $level = 0 , int $max_block_size = 0 , int $checksums = 0 ] )
LZ4 compression to frame.
Parameters
-
data
The string to compress.
-
level
The level of compression (1-12, Recommended values are between 4 and 9). (Default to 0, Not High Compression Mode.)
-
max_block_size
Maximum uncompressed size of each block. Pass any of the following values:
- LZ4_BLOCK_SIZE_64KB
- LZ4_BLOCK_SIZE_256KB
- LZ4_BLOCK_SIZE_1MB
- LZ4_BLOCK_SIZE_4MB
Any other value will be treated as LZ4_BLOCK_SIZE_64KB.
-
checksums
Enable/disable frame-level and block-level checksums. Pass a bitwise combination of the following constants:
- LZ4_CHECKSUM_FRAME: frame-level checksum
- LZ4_CHECKSUM_BLOCK: block-level checksum
Return Values
Returns the compressed data or FALSE if an error occurred.
lz4_uncompress_frame — LZ4 decompression (frame format)
Description
string lz4_uncompress_frame ( string $data )
LZ4 decompression from frame.
Parameters
-
data
The compressed string.
Return Values
Returns the decompressed data or FALSE if an error occurred.
Examples
$data = lz4_compress('test');
lz4_uncompress($data);
Compress Data
Default
$data = lz4_compress('test')
Extra prefix data
$data = lz4_compress('test', false, 'PREFIX')
Uncompress Data
Default
lz4_uncompress($data);
Offset
lz4_uncompress($data, 256, 6);



