# Redis Cache, Session and ActiveRecord for Yii 2

This extension provides the redis key-value store support for the Yii framework 2.0. It includes a `Cache` and `Session` storage handler and implements the `ActiveRecord` pattern that allows you to store active records in redis.

For license information check the LICENSE-file.

Documentation is at docs/guide/README.md.

## Requirements ¶

At least redis version 2.6.12 is required for all components to work properly.

## Installation ¶

The preferred way to install this extension is through composer.

Either run

    php composer.phar require --prefer-dist yiisoft/yii2-redis:"~2.0.0"

or add

    "yiisoft/yii2-redis": "~2.0.0"

to the require section of your composer.json.

## Configuration ¶

To use this extension, you have to configure the Connection class in your application configuration:

    return [
        //....
        'components' => [
            'redis' => [
                'class' => 'yii\redis\Connection',
                'hostname' => 'localhost',
                'port' => 6379,
                'database' => 0,
            ],
        ]
    ];

SSL configuration example: ```php return [

    //....
    'components' => [
        'redis' => [
            'class' => 'yii\redis\Connection',
            'hostname' => 'localhost',
            'port' => 6380,
            'database' => 0,
            'useSSL' => true,
        ],
    ],

]; ```

# Class Reference

Class | Description
--- | ---
yii\redis\ActiveQuery | ActiveQuery represents a query associated with an Active Record class.
yii\redis\ActiveRecord | ActiveRecord is the base class for classes representing relational data in terms of objects.
yii\redis\Cache | Redis Cache implements a cache application component based on redis key-value store.
yii\redis\Connection | The redis connection class is used to establish a connection to a redis server.
yii\redis\LuaScriptBuilder | LuaScriptBuilder builds lua scripts used for retrieving data from redis.
yii\redis\Mutex | Redis Mutex implements a mutex component using redis as the storage medium.
yii\redis\Session | Redis Session implements a session component using redis as the storage medium.
yii\redis\SocketException | SocketException indicates a socket connection failure in yii\redis\Connection.