【发布时间】:2016-01-12 11:42:55
【问题描述】:
是否可以在事务上下文之外调用 predis 命令?我的意思是在事务打开时执行 hget 或 hexist
【问题讨论】:
-
听起来你需要使用 Lua 脚本而不是 tx - 你可以在脚本中读写数据
是否可以在事务上下文之外调用 predis 命令?我的意思是在事务打开时执行 hget 或 hexist
【问题讨论】:
不,这是不可能的。 Transaction 以 (MULTI) 开头,适用于每个连接管道。所以你应该先DISCARD/EXEC 或者使用另一个predis连接到Redis服务器。
【讨论】:
你可以这样做,但不能在同一个连接上。
这是一个将foo2 值复制到foo 的事务,foo2 被第二个连接读取:
$responses = $client1->transaction()->set('foo', $client2->get('foo2'))->get('foo')->execute();
【讨论】: