Я знаю, как хранить данные в REDIS, и, к сожалению, я не знаю, как их прочитать и сохранить в массиве.
Вот пример того, что я пытаюсь достичь:
Сначала сохраните данные в REDIS, используя HMSET
:
HMSET product order01 "Red Shoes" price "5USD" quantity "2" time "02/02/2019"
HMSET product order02 "Green Shoes" price "4.99USD" quantity "1" time "03/02/2019"
HMSET product order03 "Yellow Shoes" price "4.99USD" quantity "3" time "04/02/2019"
HMSET product order04 "Pink Shoes" price "4.99USD" quantity "2" time "05/02/2019"
И потом, я понятия не имею, как сохранить их обратно в массив PHP.
Используя эту команду:
HGETALL product
Результат возвращен:
1) "order01"
2) "Red Shoes"
3) "price"
4) "4.99USD"
5) "quantity"
6) "2"
7) "time"
8) "05/02/2019"
9) "order02"
10) "Green Shoes"
11) "order03"
12) "Yellow Shoes"
13) "order04"
14) "Pink Shoes"
Мы можем видеть здесь, что существует много пропущенных ключей и значений, особенно для order02, 03 и 04. (Я подозреваю, что я не использую правильную команду? Так как мой объект должен хранить каждую строку с полной информацией в одном ключе) .
Я верну все сохраненные результаты в REDIS, но они будут отображаться строка за строкой, введите строку и значение в другой строке ... для этого я теряюсь, как получить их.
Для информации, я использую этот код для подключения к REDIS в PHP:
require 'classes/redis/src/Autoloader.php';
Predis\Autoloader::register();
$redis = new Predis\Client([
'read_write_timeout' => 5
]);
$redis->hmset("product", "order01", "Red Shoes", "price", "5USD", "quantity", "2", "time", "02/02/2019");
//............ with other lines here
$redis->expire('product', 3600);
Ваша помощь будет оценена.