WRONGTYPE Операция против ключа, удерживающего неправильный тип значения php
Привет, я использую Laravel с Redis. Когда я пытаюсь получить доступ к ключу методом get, тогда получите следующую ошибку: "WRONGTYPE Operation против ключа, удерживающего неправильный тип значения"
Я использую следующий код для доступа к значению ключа -
Я использую этот код для получения данных из redis
$values = "l_messages";
$value = $redis->HGETALL($values);
print($value);
Ответы
Ответ 1
Redis поддерживает 5 типов типов данных. Вам нужно знать, к какому типу значений, к которому относится карта ключей, как и для каждого типа данных, команда для извлечения отличается.
Вот команды для получения значения ключа:
- если значение имеет тип string → GET
<key>
- если значение имеет тип hash → HGETALL
<key>
- если значение имеет список типов → lrange
<key> <start> <end>
- если значение имеет набор типов → smembers
<key>
- если значение имеет отсортированные по типу наборы → ZRANGEBYSCORE
<key> <min> <max>
чтобы проверить тип значения, отображаемого ключом:
Ответ 2
Эта ошибка означает, что значение, проиндексированное ключом "l_messages", не относится к типу hash
, а скорее к чему-то другому. Вероятно, вы уже установили это другое значение в своем коде. Попробуйте другие другие команды-get-getter, начиная с GET, чтобы посмотреть, какой из них работает, и вы узнаете, какой тип на самом деле здесь.