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

0.6.0 2025-11-07 02:17 UTC

This package is auto-updated.

Last update: 2025-11-07 02:34:05 UTC


README

Linux Windows

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')

compress-default

Extra prefix data

$data = lz4_compress('test', false, 'PREFIX')

compress-extra

Uncompress Data

Default

lz4_uncompress($data);

uncompress-default

Offset

lz4_uncompress($data, 256, 6);

uncompress-offset