最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

phpredis執(zhí)行LUA腳本示例代碼

 更新時(shí)間:2018年10月15日 09:57:40   作者:jingtan  
這篇文章主要給大家介紹了關(guān)于phpredis執(zhí)行LUA腳本的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

本文主要給大家介紹了關(guān)于phpredis執(zhí)行LUA腳本的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),下面話不多說了,來一起看看詳細(xì)的介紹吧

示例代碼

$lua = <<<EOT
 local kws = {}
 local lrkws = {}
  local nkws = {}
  local kw_ids = {}
  local lr_ids = {}
  local n_ids = {}

  for kw in string.gmatch(KEYS[1], "[^|]+") do
   table.insert(kws, "kw:"..kw)
  end
  for kw in string.gmatch(KEYS[2], "[^|]+") do
   table.insert(lrkws, "lrkw:"..kw)
  end
  for kw in string.gmatch(KEYS[3], "[^|]+") do
   table.insert(nkws, "nkw:"..kw)
  end

  if #kws > 0 then
   kw_ids = redis.call('sinter', unpack(kws))
  end
  if #lrkws > 0 then
   lr_ids = redis.call('sinter', unpack(lrkws))
  end
  if #nkws > 0 then
   n_ids = redis.call('sinter', unpack(nkws))
  end
  local cache_key = ARGV[1]

  for _, v in ipairs(kw_ids) do
   redis.call('sadd', cache_key, v)
  end
  for _, v in ipairs(lr_ids) do
   redis.call('sadd', cache_key, v)
  end
  for _, v in ipairs(n_ids) do
   redis.call('sadd', cache_key, v)
  end
  redis.call('expire', cache_key, 600)
  return redis.call('scard', cache_key)
EOT;

 $ret = $redis->eval($lua, array("你好|謝謝", "", "hello", "cache_key"), 3);
 echo $ret;

例子中傳入3個(gè)KEYS參數(shù),1個(gè)ARGV參數(shù)。 KEYS參數(shù)是字符串,單詞之間用 | 分割。

lua腳本最后將查詢結(jié)果存入 ARGV參數(shù)指定的key中,并返回結(jié)果set的成員個(gè)數(shù)。

需要注意的是, eval函數(shù)的第3個(gè)參數(shù)為KEYS個(gè)數(shù)。 phpredis依據(jù)此值將KEYS和ARGV做區(qū)分。

參考網(wǎng)頁: https://github.com/phpredis/phpredis/blob/develop/tests/RedisTest.php

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Lua中__index和__newindex之間的沉默與合作

    Lua中__index和__newindex之間的沉默與合作

    這篇文章主要介紹了Lua中__index和__newindex之間的沉默與合作,本文著重講解了__index和__newindex之間的聯(lián)系,需要的朋友可以參考下
    2014-09-09
  • openresty中使用lua-nginx創(chuàng)建socket實(shí)例

    openresty中使用lua-nginx創(chuàng)建socket實(shí)例

    這篇文章主要介紹了openresty中使用lua-nginx創(chuàng)建socket實(shí)例,本文直接給出代碼實(shí)例和運(yùn)行效果,需要的朋友可以參考下
    2015-04-04
  • Lua利用cjson讀寫json示例分享

    Lua利用cjson讀寫json示例分享

    本文結(jié)合本人的實(shí)際使用經(jīng)驗(yàn)和代碼示例,介紹如何在Lua中對(duì)json進(jìn)行encode和decode,需要的朋友可以參考下
    2014-11-11
  • Lua中使用.和:調(diào)用函數(shù)的區(qū)別

    Lua中使用.和:調(diào)用函數(shù)的區(qū)別

    這篇文章主要介紹了Lua中使用.和:調(diào)用函數(shù)的區(qū)別,本文總結(jié)了它的調(diào)用函數(shù)的時(shí)傳入?yún)?shù)的區(qū)別,并給出了一個(gè)代碼實(shí)例,需要的朋友可以參考下
    2015-04-04
  • lua腳本語言快速入門教程

    lua腳本語言快速入門教程

    這篇文章主要介紹了lua腳本語言快速入門教程,本文講解了變量及常量、字符串、邏輯控制語句、循環(huán)結(jié)構(gòu)、函數(shù)及其使用等內(nèi)容,需要的朋友可以參考下
    2015-03-03
  • Lua中pairs與ipairs的區(qū)別總結(jié)

    Lua中pairs與ipairs的區(qū)別總結(jié)

    這篇文章主要給大家介紹了關(guān)于Lua中pairs與ipairs區(qū)別的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-09-09
  • Lua 操作 MongoDB 數(shù)據(jù)庫實(shí)例

    Lua 操作 MongoDB 數(shù)據(jù)庫實(shí)例

    這篇文章主要介紹了Lua 操作 MongoDB 數(shù)據(jù)庫實(shí)例,本文給出了修改后的lua-mongo API和具體的操作MongoDB 數(shù)據(jù)庫代碼,需要的朋友可以參考下
    2015-03-03
  • Lua中os庫詳細(xì)介紹

    Lua中os庫詳細(xì)介紹

    這篇文章主要介紹了Lua中os庫詳細(xì)介紹,本文詳細(xì)講解了OS庫中的常用方法,分別對(duì)參數(shù)做出了解釋,有的給出了示例,需要的朋友可以參考下
    2014-11-11
  • Lua常用時(shí)間函數(shù)使用實(shí)例

    Lua常用時(shí)間函數(shù)使用實(shí)例

    這篇文章主要介紹了Lua常用時(shí)間函數(shù)使用實(shí)例,本文直接給出使用代碼實(shí)例,并附有詳細(xì)注釋,要用到哪個(gè)復(fù)制即可,需要的朋友可以參考下
    2015-04-04
  • 解析Lua中的全局環(huán)境、包、模塊組織結(jié)構(gòu)

    解析Lua中的全局環(huán)境、包、模塊組織結(jié)構(gòu)

    Lua中也擁有和Python世界相似的代碼的作用范圍和組織方式,下面我們就來簡單解析Lua中的全局環(huán)境、包、模塊組織結(jié)構(gòu),需要的朋友可以參考下
    2016-06-06

最新評(píng)論

万荣县| 阜平县| 东丽区| 婺源县| 浦北县| 宣汉县| 平武县| 邹平县| 新巴尔虎左旗| 若羌县| 于田县| 惠来县| 灵璧县| 三都| 临高县| 平阳县| 新营市| 治县。| 霸州市| 广汉市| 砀山县| 丹凤县| 鹤岗市| 大渡口区| 黄冈市| 河池市| 西乌珠穆沁旗| 延边| 鄢陵县| 阿拉尔市| 宜阳县| 马公市| 大石桥市| 琼海市| 福贡县| 武义县| 遵化市| 闽侯县| 荥阳市| 万宁市| 富源县|