163 lines
2.9 KiB
PHP
163 lines
2.9 KiB
PHP
<?php
|
|
|
|
namespace app\common\utils;
|
|
|
|
use think\facade\Cache;
|
|
|
|
class Redis
|
|
{
|
|
public $redis = null;
|
|
|
|
|
|
public function __construct()
|
|
{
|
|
$this->redis = Cache::store('redis')->handler();
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 设置缓存
|
|
* @param $key
|
|
* @param $val
|
|
* @param null $time
|
|
* @return false
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:13
|
|
*/
|
|
public function set($key, $val, $time = null)
|
|
{
|
|
if (empty($key)) {
|
|
return false;
|
|
}
|
|
if (is_array($val)) {
|
|
$val = json_encode($val, JSON_UNESCAPED_UNICODE);
|
|
}
|
|
return $this->redis->set($key, $val, $time);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 获取缓存
|
|
* @param $key
|
|
* @return false
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:14
|
|
*/
|
|
public function get($key)
|
|
{
|
|
if (empty($key)) {
|
|
return false;
|
|
}
|
|
return $this->redis->get($key);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 删除指定
|
|
* @param $key
|
|
* @return mixed
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:02
|
|
*/
|
|
public function del($key)
|
|
{
|
|
return $this->redis->del($key);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 清空
|
|
* @return mixed
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:02
|
|
*/
|
|
public function flashAll()
|
|
{
|
|
return $this->redis->flushAll();
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 获取集合
|
|
* @param $key
|
|
* @return mixed
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:11
|
|
*/
|
|
public function sMembers($key)
|
|
{
|
|
return $this->redis->sMembers($key);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 设置缓存时间
|
|
* @param $key
|
|
* @param $ttl
|
|
* @return mixed
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:02
|
|
*/
|
|
public function expire($key, $ttl)
|
|
{
|
|
return $this->redis->expire($key, $ttl);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 向集合添加成员
|
|
* @param $key
|
|
* @param $val
|
|
* @return mixed
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:04
|
|
*/
|
|
public function sadd($key, $val)
|
|
{
|
|
return $this->redis->sAdd($key, $val);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 移除集合成员
|
|
* @param $key
|
|
* @param $val
|
|
* @return mixed
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:04
|
|
*/
|
|
public function srem($key, $val)
|
|
{
|
|
return $this->redis->sRem($key, $val);
|
|
}
|
|
|
|
/**
|
|
* @notes 对象转数组
|
|
* @param $key
|
|
* @return array|false
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:03
|
|
*/
|
|
public function getSmembersArray($key)
|
|
{
|
|
$res = $this->sMembers($key);
|
|
if (is_object($res)) {
|
|
return (array)$res;
|
|
}
|
|
return $res;
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 相似keys
|
|
* @param $prefix
|
|
* @return mixed
|
|
* @author 段誉
|
|
* @date 2021/12/20 12:02
|
|
*/
|
|
public function keys($prefix)
|
|
{
|
|
return $this->redis->keys($prefix.'*');
|
|
}
|
|
|
|
} |