redis的lua脚本使用

1,027 阅读1分钟

场景:设置一个key并且使用expireat命令设置过期时间

实例:

使用lua脚本来把多条命令包含进去,lua脚本的执行

下面是一个示例(设置值并同时设置过期时间,php代码):

$lua = <<< 'LUA'
            -- local为声明局部变量
            local key,value,time = KEYS[1],ARGV[1],ARGV[2]
            
            redis.call("set", key, value)
            
            local result = redis.call("expireat", key, time)

            return result
LUA;

        Redis::eval($lua,1,’test_key‘,'test_value','2021-11-09 22:21:14');

版本

  • laravel 5.5.50
  • predis 1.1.1
  • redis 5.0.3

当然也可以直接使用:set test_key test_value ex 过期秒数