Download the PHP package averias/phpredis-bloom without Composer

On this page you can find all versions of the php package averias/phpredis-bloom. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package phpredis-bloom

Test Coverage Maintainability Build Status Packagist Version GitHub

PhpRedisBloom

PHP client for RedisLab/RedisBloom Module, an extension of Redis core for probabilistic data structures.

Table of content

Intro

PhpRedisBloom provides the full set of commands for RedisBloom Module and it's built on top of phpredis and use it as Redis client, so you can also take advantage of some of the features included in phpredis as Redis client.

Requirements

Usage

Clients

There are 2 ways to execute PhpRedisBloom commands:

Executing commands by using RedisBloomClient

Executing commands by using RedisBloom data types classes (Bloom Filter, Cuckoo Filter, Count-Min Sketch and Top-K)

Items

The only allowed item values to add or insert in the 4 data structure are string, integers, and float, but notice that all items are stored as strings, so adding the integer 13 or the string 13 will end in the same result. For those data structures that allow inserting repeated items (like Cuckoo Filter) it will increase the count of that item or will fail in the second insertion in case of structures that do not allow inserting repeated items.

Same behavior for floats, inserting first a float like 17.2 and then insert its representation as string 17.2 will throw an exception in the second insertion in Bloom Filters which doesn't allow repeated items and in case of other structures like Cuckoo Filter, Count-Min Sketch and Top-k will increase the counter to 2 after the second insertion.

You can take a look to examples/inserting-numbers.php to see an example of this behavior.

Why having a RedisBloomClient and classes for each RedisBloom data types?

Automatic connection, disconnection and reconnection

RedisBloomClient and Redis Bloom data types automatically connect Redis after creation, you can disconnect them from the Redis instance by calling its disconnect method:

$client->disconnect()

or

$bloomFilter->disconnect()

which will return true or false depending on the disconnection was possible.

After one successful disconnection the client or data type object will reconnect automatically if you reuse the object for sending more commands (see example below)

Code Sample

The following code snippet show how to instantiate RedisBloom clients and BloomFilter data type with different connection configurations

Commands

PhpRedisBloom commands

Phpredis-bloom provides all the commands for the four RedisBloom data types, please follow the links below for a detailed info for each one:

Phpredis commands

You can send Redis commands as specified in phpredis documentation

Raw commands

You can send whatever you want to Redis by using RedisBloomClient::executeRawCommand:

Tests

On a local Redis server 4.0+ with RedisBloom module and Redis extension 5 installed

From console run the following command from the root directory of this project:

./vendor/bin/phpunit

if you don't have configured your local Redis server in 127.0.0.1:6379 you can set REDIS_TEST_SERVER, REDIS_TEST_PORT and REDIS_TEST_DATABASE in ./phpunit.xml file with your local Redis host, port and database before running the above command.

Docker

Having Docker installed, run the following command in the root directory of this project:

bash run-tests-docker.sh

by running the above bash script, two docker services will be built, one with PHP 7.2 with xdebug and redis extensions enabled and another with the image of redislab\rebloom:2.0.3 (Redis server 5 with RedisBloom module installed). Then the tests will run inside phpredis-bloom docker service container and finally both container will be stopped.

Examples

License

PhpRedisBloom code is distributed under MIT license, see LICENSE file


All versions of phpredis-bloom with dependencies

PHP Build Version
Package Version
Requires php Version ^7.2
ext-redis Version ^5.0.1
myclabs/php-enum Version ^1.7
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package averias/phpredis-bloom contains the following files

Loading the files please wait ....