redis 常用命令

public $op_type = array(
    array('name'=>'字符串get','value'=>'1'),
    array('name'=>'队列llen','value'=>'2'),
    array('name'=>'队列lrange 前n个','value'=>'3'),
    array('name'=>'队列lrange 最后n个','value'=>'4'),
    array('name'=>'哈希hget','value'=>'5'),
    array('name'=>'哈希hexists','value'=>'6'),
    array('name'=>'集合scard','value'=>'7'),
    array('name'=>'集合sismember','value'=>'8'),
    array('name'=>'有序集合zcard','value'=>'9')
);
/**
 * 获取数组
 * @param $redis
 * @param $data
 * @param $redis_name
 * @return array
 */
public function redis_data($redis, $data, $redis_name)
{
    $return_data = [];
    if ($redis->exists($data['key_name'])) {//判断是否存在
        switch ($data['op_type']) {
            case 1:  //
                $get = $redis->get($data['key_name']);
                if ($get) $return_data = [['field' => $data['key_name'], 'value' => $get, 'redis_name'=>$redis_name]];
                break;
            case 2:
                $get = $redis->lLen($data['key_name']);//获取值
                if ($get) $return_data = [['field' => $data['key_name'], 'value' => $get, 'redis_name'=>$redis_name]];
                break;
            case 3:
                $data['param'] = intval($data['param']);
                if ($data['param'] <= 100 && $data['param'] > 0) {
                    $list = $redis->lRange($data['key_name'],  '-'.$data['param'], -1);//获取值
                    if ($list) {
                        foreach ($list as $key => $value) {
                            $return_data[] = ['field' => $key, 'value' => $value, 'redis_name'=>$redis_name];
                        }
                    }
                }
                break;
            case 4:
                $data['param'] = intval($data['param']);
                if ($data['param'] <= 100 && $data['param'] > 0) {
                    $list = $redis->lRange($data['key_name'], 0, $data['param']-1);//获取值
                    if ($list) {
                        foreach ($list as $key => $value) {
                            $return_data[] = ['field' => $key, 'value' => $value , 'redis_name'=>$redis_name];
                        }
                    }
                }
                break;
            case 5:
                if (!empty($data['param'])) {
                    $get = $redis->hGet($data['key_name'], $data['param']);//获取值
                    if ($get) $return_data = [['field' => $data['param'],'value' => $get, 'redis_name'=>$redis_name]];
                }
                break;
            case 6:
                if (!empty($data['param'])) {
                    $get = $redis->hExists($data['key_name'], $data['param']);//获取值
                    if ($get) $return_data = [['field' => $data['param'],'value' => $get, 'redis_name'=>$redis_name]];
                }
                break;
            case 7:
                $get = $redis->scard($data['key_name']);//获取值
                if ($get) $return_data = [['field' => $data['key_name'],'value' => $get, 'redis_name'=>$redis_name]];
                break;
            case 8:
                if (!empty($data['param'])) {
                    $get = $redis->sIsMember($data['key_name'], $data['param']);//获取值
                    if ($get) $return_data = [['field' => $data['param'],'value' => $get, 'redis_name'=>$redis_name]];
                }
                break;
            case 9:
                $get = $redis->zCard($data['key_name']);//获取值
                if ($get) $return_data = [['field' => $data['key_name'],'value' => $get, 'redis_name'=>$redis_name]];
                break;
            default:
                break;
        }
    }
    return $return_data;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值