• Stars
    star
    204
  • Rank 191,459 (Top 4 %)
  • Language
    C
  • License
    MIT License
  • Created over 9 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Zstd Extension for PHP

Zstd Extension for PHP

Linux Windows

This extension allows Zstandard.

Documentation for Zstandard can be found at ยป https://github.com/facebook/zstd.

Build from sources

% git clone --recursive --depth=1 https://github.com/kjdev/php-ext-zstd.git
% cd php-ext-zstd
% phpize
% ./configure
% make
% make install

To use the system library

% ./configure --with-libzstd

Install from pecl:

% pecl install zstd

Distribution binary packages

Fedora

Fedora users can install the ยป php-zstd package from official repository.

dnf install php-zstd

CentOS / RHEL

CentOS / RHEL (and other clones) users can install the ยป php-zstd package from ยป EPEL repository.

yum install php-zstd

Other RPM packages of this extension, for other PHP versions, are available in ยป Remi's RPM repository.

Configration

php.ini:

extension=zstd.so

Constant

Name Description
ZSTD_COMPRESS_LEVEL_MIN Minimal compress level value
ZSTD_COMPRESS_LEVEL_MAX Maximal compress level value
ZSTD_COMPRESS_LEVEL_DEFAULT Default compress level value
LIBZSTD_VERSION_NUMBER libzstd version number
LIBZSTD_VERSION_STRING libzstd version string

Function

  • zstd_compress โ€” Zstandard compression
  • zstd_uncompress โ€” Zstandard decompression
  • zstd_compress_dict โ€” Zstandard compression using a digested dictionary
  • zstd_uncompress_dict โ€” Zstandard decompression using a digested dictionary

zstd_compress โ€” Zstandard compression

Description

string zstd_compress ( string $data [, int $level = 3 ] )

Zstandard compression.

Parameters

  • data

    The string to compress.

  • level

    The level of compression (1-22). (Defaults to 3)

    A value smaller than 0 means a faster compression level. (Zstandard library 1.3.4 or later)

Return Values

Returns the compressed data or FALSE if an error occurred.

zstd_uncompress โ€” Zstandard decompression

Description

string zstd_uncompress ( string $data )

Zstandard decompression.

Alias: zstd_decompress

Parameters

  • data

    The compressed string.

Return Values

Returns the decompressed data or FALSE if an error occurred.

zstd_compress_dict โ€” Zstandard compression using a digested dictionary

Description

string zstd_compress_dict ( string $data , string $dict [, int $level = 3 ])

Zstandard compression using a digested dictionary.

Alias: zstd_compress_usingcdict

Parameters

  • data

    The string to compress.

  • dict

    The Dictionary data.

  • level

    The level of compression (1-22). (Defaults to 3)

Return Values

Returns the compressed data or FALSE if an error occurred.

zstd_uncompress_dict โ€” Zstandard decompression using a digested dictionary

Description

string zstd_uncompress_dict ( string $data , string $dict )

Zstandard decompression using a digested dictionary.

Alias: zstd_decompress_dict, zstd_uncompress_usingcdict, zstd_decompress_usingcdict

Parameters

  • data

    The compressed string.

  • dict

    The Dictionary data.

Return Values

Returns the decompressed data or FALSE if an error occurred.

Namespace

Namespace Zstd;

function compress( $data [, $level = 3 ] )
function uncompress( $data )
function compress_dict ( $data, $dict )
function uncompress_dict ( $data, $dict )

zstd_compress, zstd_uncompress, zstd_compress_dict and zstd_uncompress_dict function alias.

Streams

Zstd compression and decompression are available using the compress.zstd:// stream prefix.

Examples

// Using functions
$data = zstd_compress('test');
zstd_uncompress($data);

// Using namespaced functions
$data = \Zstd\compress('test');
\Zstd\uncompress($data);

// Using streams
file_put_contents("compress.zstd:///path/to/data.zstd", $data);
readfile("compress.zstd:///path/to/data.zstd");

// Providing level of compression, when using streams 
$context = stream_context_create([
    'zstd' => [
            'level' => ZSTD_COMPRESS_LEVEL_MIN,
        ],
    ],
);

file_put_contents("compress.zstd:///path/to/data.zstd", $data, context: $context);
readfile("compress.zstd:///path/to/data.zstd", context: $context);

More Repositories

1

php-ext-brotli

Brotli Extension for PHP
C
171
star
2

php-ext-lz4

LZ4 Extension for PHP
PHP
149
star
3

php-ext-snappy

Snappy Extension for PHP
PHP
127
star
4

apache-mod-brotli

mod_brotli is Brotli compression module for Apache HTTPD Server.
C
61
star
5

php-ext-handlersocketi

PHP HandlerSocket plugin for MySQL Improved Extension
C
44
star
6

php-ext-jq

This extension allows jq
PHP
41
star
7

php-redis-graph

RedisGraph PHP Client
PHP
40
star
8

php-ext-unqlite

UnQLite Extension for PHP
C
34
star
9

hoextdown

Hoextdown is an extension to Hoedown
C
23
star
10

nginx-auth-jwt

Nginx module for the authenticate using JWT
C
20
star
11

nginx-keyval

Nginx module for the key-value store
Perl
19
star
12

php-ext-hoedown

PHP Extension for Hoedown
PHP
16
star
13

php-ext-zopfli

This extension allows Zopfli compression.
PHP
16
star
14

apache-mod-sass

mod_sass is Sass handler module for Apache HTTPD Server.
C
10
star
15

php-ext-vedis

PHP Extension for Vedis
C
6
star
16

php-ext-msgpacki

PHP MessagePack Improved Extension
PHP
6
star
17

php-ext-sophia

PHP Extension for Sophia
C
6
star
18

apache-mod-fluentd

Apache fluentd module
C
6
star
19

php-password-hashing

PHP Password Hashing Command
C
5
star
20

phpman

PHP manual for command line
Shell
5
star
21

zmq-tools

ZeroMQ tools
C++
5
star
22

php-ext-elog

elog function Extension for PHP
C
5
star
23

php-ext-override

Override function Extension for PHP
C
5
star
24

php-ext-wiredtiger

C
5
star
25

php-ext-extension_load

PHP Extension load library
C
4
star
26

apache-mod-kafka

Kafka data collector module for Apache HTTPD Server
C
4
star
27

php-ext-callmap

Call a callback with an map of parameters function Extension for PHP
PHP
4
star
28

apache-mod-sundown

mod_sundown is Markdown handler module for Apache HTTPD Server.
C
4
star
29

zlmb

ZeroMQ-based Log Message broker
C
3
star
30

apache-mod-v8

mod_v8 is Javascript V8 Engine handler module for Apache HTTPD Server.
C++
3
star
31

php-ext-shellinford

PHP Extension for shellinford (FM-Index)
C
3
star
32

apache-mod-hoedown

mod_hoedown is Markdown handler module for Apache HTTPD Server
C
3
star
33

apache-mod-shorturl

mod_shorturl is mongoDB base shorturl module for Apache HTTPD Server.
C++
2
star
34

nginx-thumbhash

Nginx module for the ThumbHash
C
2
star
35

php-ext-xz

XZ Extension for PHP
PHP
2
star
36

php-ext-tink

Tink for PHP
C++
2
star
37

php-ext-transactd

PHP Extension for Transactd Plugin
C++
2
star
38

php-ext-enum

Enum interface
C
2
star
39

livereload-c

An implementation of the LiveReload server in C (libwebsocket)
C
2
star
40

nginx-jq

C
2
star
41

php-ext-bzip3

Bzip3 Extension for PHP
C
2
star
42

php-ext-extmethod

PHP extension is Extension method by closure.
PHP
1
star
43

nginx-qoi

C
1
star
44

fswatch

fswatch of notifytools use version.
C
1
star
45

php-ext-hidefl

Hidef lite function Extension for PHP
C
1
star
46

apache-mod-coffee

mod_coffee is CoffeeScript handler module for Apache HTTPD Server.
C
1
star
47

jq-api

API system with JSON files and jq filters
Shell
1
star
48

php-ext-brunsli

Brunsli Extension for PHP
C
1
star
49

mariadb-udf-php-password-hashing

PHP Password Hashing for MariaDB/MySQL UDF
C
1
star
50

woothee-c

The C implementation of Project Woothee
C
1
star