Connection
最后更新于:2022-04-02 07:07:50
## Mix\Redis\Connection::class
该类使用魔术方法对 phpredis 扩展提供的方法做映射处理,可调用扩展内提供的所有方法。
## 依赖注入配置
- [beans/redis.php#L32](https://github.com/mix-php/mix-skeleton/tree/v2.1/manifest/beans/redis.php#L32)
## 直接获取连接
除了通过连接池,我们还能直接通过某个依赖配置直接获取连接实例:
> 由于 manifest.php 中 Connection::class 的依赖配置并没有设置 name 属性,因此 name = 命名空间
~~~
/** @var \Mix\Redis\Connection $db */
$db = context()->get(\Mix\Redis\Connection::class);
~~~
## 命令调用
这里只举例几个常用方法,更多方法请自行百度。
~~~
// 写入一个string值
$redis->set($key, $value);
// 写入一个带生存时间的string值
$redis->setex($key, 3600, $value);
// 在名称为key的list左边(头)添加一个值为value的 元素
$redis->lpush($key, $value);
~~~
## 长连接超时问题
Redis 配置文件内的 `timeout` 参数,决定了 sleep 多长时间的连接会被主动 kill,正常情况下是需要用户自己来处理连接超时的问题,但使用该组件,用户不需要处理,组件底层已经帮你处理了。
';