2017年2月3日金曜日

Laravel5.4でRedis

Laravel5.4Redisです。Redisにはデータ型が無く、文字列しか保存されないようなので、配列を保存したい場合などは、JSONでエンコードするのがコツのようです。

/app/Http/Controllers/BlogsController.php
use Illuminate\Support\Facades\Redis;

  public function redis()
  {
    // データを配列で用意
    $blogs = Blog::orderBy('created_at','desc')->take(10)->get()->toArray() ;

    // JSONでエンコード
    $json = json_encode($blogs);

    // Redisに保存
    Redis::set('blogs', $json);

    // Redisから読み込む
    $blogs = Redis::get('blogs') ;

    // JSONデコード
    $blogs = json_decode($blogs, true) ;
  }

参考サイト
Redis(Laravel)
Storing an array of data using Redis (from Laravel)(Stack Overflow)
phpで、json_encodeした配列に、json_decodeするとオブジェクトで返って来てしまう(カサヒラボさん)
メモリ内データストアの「Redis」をUbuntuにインストール

0 件のコメント:

コメントを投稿