DoctrineのFilesystemCacheでローカルにキャッシュ

  • 0
    いいね
  • 0
    コメント
    この記事は最終更新日から1年以上が経過しています。

    Redis とか、memcached とか使うまでもない、ちょちょっとしたキャッシュ用に。

    1. インストール

    composer.json

    {
        "require": {
            "doctrine/cache": "1.6.*"
        }
    }
    
    $ composer install
    

    2. キャッシュの保存

    <?php
    
    use Doctrine\Common\Cache\FilesystemCache;
    
    $cache  = new FilesystemCache('/tmp/hoge');
    $data = [
        'id' => 1,
        'name' => 'John',
        'phone' => '03-0000-2222',
    ];
    $id = "users/1";
    $cache->save($id, $data, $lifeTime = 10);
    
    

    3. キャッシュの取得

    <?php
    
    use Doctrine\Common\Cache\FilesystemCache;
    
    
    $cache_id = "users/1";
    
    $cache  = new FilesystemCache('/tmp/hoge');
    $result = $cache->fetch($cache_id);
    
    print_r($result);
    
    
    Array
    (
        [id] => 1
        [name] => John
        [phone] => 03-0000-2222
    )
    

    4. キャッシュの削除

    $cache->delete($id);
    

    5. 確認

    $cache->contains($id);