20240315学习PHP操作redis

PHP操作redis

string
<?php
//连接本地的 Redis 服务
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);

//redis密码  也可以取消密码
$redis->auth('123456');

//设置key value
$redis->set('key', 'hello');

//通过key追加
$redis->append('key', 'world');

//通过key取值
echo $redis->get('key'); //'helloworld'

//根据key设置过期时间
$redis->expire('key',30);  

//根据key查询过期时间  这里要注意  -1代表永不过期  -2代表己过期
echo $redis->TTL('key');

//参考资料 https://www.kancloud.cn/a173512/php_note/1352132
hash表
//增,改,将哈希表key中的域field的值设为value,不存在创建,存在就覆盖【1 | 0】
//如果之前不存在就创建 同时返回1  如果之前存在就修改 同时返回0
$redis->hset('key','field','value11');

//查,取值【value|false】
//通过key与field字段获取value
$redis->hget('key','field');

//定义两个数组
//关联数组
$arr = array('one'=>1, 2, 3, 'name'=>'tom', 4);
//索引数组
$arr2 = array('one', 0, 1, 'name', 2);

//增,改,设置多个值$arr为(索引|关联)数组,$arr[key]=field, [ true ]
$redis->hMset('key',$arr);

//查,获取指定下标的field,[$arr | false]    ["one"=>1,0=>2,1=>3,"name"=>"tom",2=>4]
//返回数组 其实是把第2个数组里的每一个value 当作 查询的field  如果没有那个字段,就返回false
$redis->hMget('key',$arr2);

$redis->hGetAll('key');//查,返回哈希表key中的所有域和值。[当key不存在时,返回一个空表]
$redis->hKeys('key');//查,返回哈希表key中的所有field。[当key不存在时,返回一个空表]
$redis->hVals('key');//查,返回哈希表key中的所有值。[当key不存在时,返回一个空表]
$redis->hDel('key',$arr2);//删,删除指定下标的field,不存在的域将被忽略,[num | false]

$redis->hExists('key','field');//查看hash中是否存在field,[1 | 0]
$redis->hIncrBy('key','field',$int_num);//为哈希表key中的域field的值加上量(+|-)num,[new_num | false]
$redis->hLen('key');//返回哈希表key中域的数量。[ num | 0]

参考资料 https://www.kancloud.cn/a173512/php_note/1352131