[已解决] 求教 predis 的一个错误
为啥下面的方法执行结果,会报
production.ERROR: ERR value is not an integer or out of range {"exception":"[object] (Predis\\Response\\ServerException(code: 0): ERR value is not an integer or out of range
<?php
public function incrAndExpire($key, $expire)
{
$script = <<<LUA
local current
local key = KEYS[1]
local expire_time = tonumber(ARGV[1])
current = redis.call("incr", KEYS[1])
if tonumber(current) == 1 then
return redis.call("expire", key, expire_time)
else
return 0
end
LUA;
//return Redis::eval($script, $key, $expire); // 源代码
return Redis::eval($script, 1, $key, $expire);
}
推荐文章: