【问题标题】:WRONGTYPE Operation against a key holding the wrong kind of value in redisWRONGTYPE 针对在 redis 中持有错误类型值的键的操作
【发布时间】:2016-10-24 22:40:47
【问题描述】:

我在 Redis 中使用 php。当我尝试通过 get 方法访问密钥时,会出现以下错误:

WRONGTYPE 对持有错误值的键的操作

我正在使用以下代码访问 hasekey 值 - 我使用此代码从 redis 获取数据

$values = "l_messages"

$value = $redis->GET($values)

print($value)

【问题讨论】:

  • 你用的是什么redis库?
  • Predis 库正在使用
  • 这是准确的代码吗?如果没有请更新。字符串"l_messages" 不应引起问题。在$value = $redis->GET($values) 行之前放一个var_dump($values)
  • 我使用这个命令获取单个值返回$value = $redis->rpop($values),但是使用这个命令$value = $redis->get($values) 没有返回值跨度>

标签: php redis


【解决方案1】:

此错误表示您的对象的数据类型不同,并且您使用了错误的操作来检索密钥。

如果 l_messages哈希映射,并且您需要检索其所有值,则您需要使用 hgetall。如果是set,则必须使用smembers。同样,对于每种类型的键,您必须使用不同的命令。

您可以使用 type 命令来了解该特定对象的类型。

完整参考请参见:https://www.sitepoint.com/an-introduction-to-redis-in-php-using-predis/

【讨论】:

    猜你喜欢
    • 2021-05-25
    • 1970-01-01
    • 2018-06-01
    • 2021-04-10
    • 2016-05-04
    • 2019-02-28
    • 2016-10-23
    • 2020-10-01
    • 2019-11-08
    相关资源
    最近更新 更多