PHP中使用redis 执行lua脚本
在php中,可以通過redis執行lua腳本
1、腳本
<?php
$redis = new Redis(); #實例化redis類
$redis->connect('127.0.0.1'); #連接服務器
$lua = <<<SCRIPT
return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}
SCRIPT;
//對應的redis命令如下 eval "return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}" 2 key1 key2 first second
$s = $redis->eval($lua,array('key1','key2','first','second'),2);
var_dump($s);
$redis->close(); #關閉連接
?>
2、代碼解析
1)eval() 方法
eval方法的參數 3個:
第一個參數:腳本代碼
第二個參數:參數數組,
第三個參數:是個整數,表示第二個參數中的前幾個是key參數,剩下的都是附加參數
2)這個執行的對應命令如下
eval “return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}” 2 key1 key2 first
second
解釋:
return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}
Lua 腳本
redis->eval($lua, array(‘key1’,‘key2’,‘first’,‘second’),2);
$lua是Lua腳本;
key1 和 key2 是鍵名參數,分別使用 KEYS[1] 和 KEYS[2] 訪問;
first 和 second 是附加參數,可以通過 ARGV[1] 和 ARGV[2] 訪問它們;
數字 2 指定了鍵名參數的數量;
來源:https://blog.csdn.net/JineD/article/details/108645752
總結
以上是生活随笔為你收集整理的PHP中使用redis 执行lua脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 吊顶量顶30一平,量地面50一平,哪种比
- 下一篇: Python数据可视化之南丁格尔玫瑰图(