diszz / yii2-phpredis
dev-master
2024-07-05 07:56 UTC
Requires
- yiisoft/yii2: ~2.0.0
This package is auto-updated.
Last update: 2024-09-10 12:18:07 UTC
README
基于 new Redis() 方式连接 redis 的 yii2 框架集成,有效解决了 fgets, fwrite 操作 socket 方式的弊端。支持哨兵模式!
安装方法
1. 使用命令安装:php composer.phar require --prefer-dist diszz/yii2-phpredis dev-master 或 composer require --prefer-dist diszz/yii2-phpredis dev-master
2. 下载文件包,在 vendor 文件夹下新建文件夹 diszz,解压后复制 yii2-phpredis 到 diszz 文件夹下,结构如下
vendor\diszz\yii2-phpredis\Connection.php
并在 vendor\yiisoft\extensions.php 文件末尾添加如下配置
'diszz/yii2-phpredis' =>
array (
'name' => 'diszz/yii2-phpredis',
'version' => '1.0.0.0',
'alias' =>
array (
'@diszz/phpredis' => $vendorDir . '/diszz/yii2-phpredis',
),
),
使用方法
在 main.php 或 main-local.php 配置如下信息
<?php
return [
'vendorPath' => dirname(dirname(__DIR__)) . '/vendor',
'charset' => 'utf-8',
'language' => 'zh-CN',
'timeZone' => 'PRC',
'components' => [
'cache' => [
//'class' => 'diszz\caching\FileCache',
'class' => 'diszz\phpredis\Cache',
],
'redis' => [
'class' => 'diszz\phpredis\Connection',
'hostname' => 'localhost',
'port' => 6379,
'database' => 0,
],
'session' => [
'class' => 'diszz\phpredis\Session',
// 'class' => 'diszz\web\DbSession',
// 'db' => 'mydb', // 数据库连接的应用组件ID,默认为'db'.
// 'sessionTable' => 'my_session', // session 数据表名,默认为'session'.
],
....
代码中使用
$key = 'aaaaa';
$value = 'aaaa1111';
if (Yii::$app->cache->exists($key))
{
var_dump('get');
var_dump(Yii::$app->cache->get($key));
}
else
{
var_dump('set');
Yii::$app->cache->set($key, $value, 3000);
}
$key = 'ccc';
$value = 'ccccc111';
if (Yii::$app->session->get($key))
{
var_dump('get');
var_dump(Yii::$app->session->get($key));
}
else
{
var_dump('set');
Yii::$app->session->set($key, $value);
}