2017 © Pedro Peláez
 

library cache

General redis and memcache class

image

yeszao/cache

General redis and memcache class

  • Wednesday, May 30, 2018
  • by yeszao
  • Repository
  • 1 Watchers
  • 1 Stars
  • 8 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

1 使用方法

  1. 使用composer下载 yeszao/cache 组件:, (*1)

    composer install yeszao/cache
    
    
  2. 在MVC框架Model层或者Service层的基类添加__call()方法,例如:, (*2)

    namespace app\models;
    use yeszao\cache;
    
    class Base
    {
        public function __call($name, $arguments)
        {
            $redis = new \Redis();
            $redis->connect('redis');
    
            // ***主要是这一行***
            return (new Cache($redis))->get($this, $name, $arguments);
        }
    }
    

    其中,yeszao\cache\Cache对象创建时必须传入 Redis 连接句柄, 然后再通过get方法获取缓存。, (*3)

  3. 让子类继承Base类,例如:, (*4)

    namespace app\models;
    use app\models\Base;
    
    class Book extends Base
    {
        public function getById($id)
        {
            return ['id' => 100, 'title' => 'PHP documents']
        }
    }
    
    
  4. 然后就可以在Controllers类或其他Model类中使用: (new Book)->getById(100); // 原始的、不用缓存的调用方式,一般是读取数据库的数据。 (new Book)->getByIdCache(100); // 使用缓存的调用方式,缓存键名为:app_models_book:getbyid: + md5(参数列表) (new Book)->getByIdClear(100); // 删除这个缓存 (new Book)->getByIdFlush(); // 删除 getById() 方法对应的所有缓存,即删除 app_models_book:getbyid:*。这个方法不需要参数。

2 构造函数参数

yeszao\cache\Cache构造函数参数: - $redis: 必须。Redis连接对象。 - $config: 可选。缓存的一些配置。 - $config['prefix']: 缓存键名前缀,默认空字符串。 - $config['expire']:缓存过期时间,默认3600秒。 - $config['emptyExpire']:原函数返回空值是的缓存过期时间,默认10秒。, (*5)

3. 方法

除了构造函数,主要就是2个方法。, (*6)

3.1 get()方法

获取缓存,如果未缓存,则调用原对象的原方法,拿到数据后保存到Redis中,并返回数据。 有3个参数,基本就是固定的: - $object: 当前调用的类对象,传入$this。 - $name: 欲调用的方法名称,由__call自动获取后传入。 - $arguments: 欲调用的方法的参数,由__call自动获取后传入。, (*7)

3.2 expire()方法

设置缓存过期时间。 默认的缓存过期时间是3600秒,也可以用expire()方法动态设置。 只有1个参数: - $time: 缓存过期时间,单位为秒。, (*8)

The Versions

30/05 2018

dev-master

9999999-dev https://www.awaimai.com/

General redis and memcache class

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Gary Meng

cache php redis

30/05 2018

v1.0

1.0.0.0 https://www.awaimai.com/

General redis and memcache class

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Gary Meng

cache php redis