HMGET在lua-resty-redis中有一个数组

时间:2013-11-28 23:09:36

标签: lua redis

我想替换此命令:

red:hmget('item', 'item:1', 'item:2')

有类似的东西:

local test = {'item:1', 'item:2'}
red:hmget('item', test)

但是,当我尝试这个时,我收到错误(string expected, got table)。我如何在Lua for Redis中格式化这个?

1 个答案:

答案 0 :(得分:5)

根据您使用的Lua版本,您需要使用unpack

  • Lua 5.1 red:hmget('item', unpack(test))
  • Lua 5.2 red:hmget('item', table.unpack(test))

unpack是一个解开数组样式表的函数,就好像你像使用一组参数一样使用它。它有点类似于您可能在其他语言中找到的splat运算符。

> =unpack{'item:1', 'item:2'}
item:1  item:2