Я начал несколько месяцев назад с Laravel, и я хочу реализовать Redis.Как обновить или удалить запись с выхода JSON с помощью Laravel и Predis
Как и как лучше всего обновлять или удалять 1 или более записей от $test
.
$allarticles = Article::all();
$client = Redis::connection();
$client->set('articles', $allarticles->toJson());
$test = $client->set('articles');
Выход:
[{
"id":1,"title":"xQeMKGefAW","content":"[email protected]","created_at":null,"updated_at":null},{
"id":2,"title":"a5wpRVRBNZ","content":"[email protected]","created_at":null,"updated_at":null},{
"id":3,"title":"QF5xhsMh7d","content":"[email protected]","created_at":null,"updated_at":null},{
"id":4,"title":"gQVbDNbcmD","content":"[email protected]","created_at":null,"updated_at":null},{
"id":5,"title":"FsOnoABBTg","content":"[email protected]","created_at":null,"updated_at":null},{
"id":6,"title":"89sS4UASJl","content":"[email protected]","created_at":null,"updated_at":null},{
"id":7,"title":"gpT3hO43V1","content":"[email protected]","created_at":null,"updated_at":null},{
"id":8,"title":"1DKvbBn7yV","content":"[email protected]","created_at":null,"updated_at":null},{
"id":9,"title":"pRr2LgzezC","content":"[email protected]","created_at":null,"updated_at":null}
Ответ:
$allarticles = Article::all()->keyBy('id'); $client = Redis::connection();
$newarray = array();
foreach ($allarticles->toArray() as $key => $value){
$newarray[$key] = json_encode($value); } $client->hmset('testtest', $newarray);
$qwerty = $client->HGETALL('testtest');
print_r($qwerty);
}
Как это сделать, мне нужно сделать цикл? – Bas
Вам нужно получить пару ключевых значений, например, хэш из Json. Это зависит от вашей логики приложения, тогда один вызов Hmset выполнит эту работу. Подобным же образом hgetall и heel являются одиночным вызовом. –
Надеюсь, вы можете привести мне пример :) – Bas