在PHP中使用redis来操作lua脚本,使用$redis->eval()命令时出错,参数传递无效

新手上路,请多包涵

使用eval命令说最多传递三个参数,而且第二个参数必须为数组,我现在的写法是有什么问题吗?不吝赐教!
clipboard.png

阅读 7.3k
3 个回答
新手上路,请多包涵

使用$redis->eval命令时传递三个参数,第一个为lua脚本文件,第二个为key,第三个参数为key的个数
向lua中传递参数时,在key中定义好,即可,示例正确代码
图片描述

问个问题?在redis中调用lua的应用场景是啥?

脚本里使用的所有键都应该由 KEYS 数组来传递, 也就是说redis.call中不能用你脚本中定义的变量, 你这个写法在集群redis中是错误的.

redis.call('set', KEYS[1], ARGV[1])

用这种方式

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题