1.php中使用redis.eval操作lua腳本的時候,出錯,不知道哪里問題,大家?guī)兔匆幌轮x謝
set 值進去了,使用eval調(diào)用lua去檢測如果這個my:lock的值是這個值就刪除,但這一步就是出錯,大神們幫忙看一下,謝謝
php不太懂,但redis還是比較熟的,我猜是這里出的錯。eval($script, $a, 1)
eval($script, $a, 1)
因為redis默認eval命令的參數(shù)依次是:lua腳本,鍵值對個數(shù),所有的鍵名,所有的值。
我不知道php里的redis庫有沒有修改這個順序,如果不對請忽略這個答案吧,否則你可以試試下面這樣。eval($script, 1, $a)
另外,這里$a是個數(shù)組,其實應該拆開來傳值吧?eval(#script, 1, $a[0], $a[1])
因為redis默認eval命令的參數(shù)依次是:lua腳本,鍵值對個數(shù),所有的鍵名,所有的值。
eval($script, 1, $a)
??另外,這里$a是個數(shù)組,其實應該拆開來傳值吧???eval(#script, 1, $a[0], $a[1])
??好奇的是為什么需要在php中去調(diào)lua來實現(xiàn)這個邏輯呢?你用PHP從redis中讀取這個key的值比較下不就可以實現(xiàn)你想要的邏輯嗎。