calgamolib/cache

此包已被废弃,不再维护。作者建议使用 knot-lib/cache 包。

Calgamo 框架的缓存库。

0.2.0 2019-12-03 22:00 UTC

This package is auto-updated.

Last update: 2019-12-09 09:16:18 UTC


README

Latest Version on Packagist Software License Build Status Coverage Status Code Climate Total Downloads

描述

Calgamo 框架的缓存库。

功能

  • PSR16: 符合 SimpleCache 标准
  • 文件缓存
  • 数组缓存

示例(FileCache)

配置

$config = [
    'cache' => [
        'root' => '/path/to/cache',
        'expire' => 5,      // expires 5 seconds after cache item is set
    ]
];

get/set

$cache = new FileCache($config);

$cache->set('my favorite artist', 'stevie wonder');

echo $cache->get('my favorite artist');    // stevie wonder

$cache->set('my favorite artist', 'justin bieber');

echo $cache->get('my favorite artist');    // justin bieber

过期

$cache = new FileCache($config);

$cache->set('my favorite artist', 'stevie wonder');

echo $cache->get('my favorite artist');    // stevie wonder

sleep(6);

echo $cache->get('my favorite artist');    // 

$cache->set('my favorite artist', 'stevie wonder', 10);

sleep(6);

echo $cache->get('my favorite artist');    // stevie wonder

删除

$cache = new FileCache($config);

$cache->set('my favorite artist', 'stevie wonder');

echo $cache->get('my favorite artist');     // stevie wonder

$cache->delete('my favorite artist');

echo $cache->get('my favorite artist');     //

清除

$cache = new FileCache($config);

$cache->set('my favorite artist', 'stevie wonder');
$cache->set('my favorite movie', 'Jurassic Park');

echo $cache->get('my favorite artist');     // stevie wonder
echo $cache->get('my favorite movie');      // Jurassic Park

$cache->clear();

echo $cache->get('my favorite artist');     // 
echo $cache->get('my favorite movie');      // 

获取多个缓存

$cache = new FileCache($config);

$cache->set('my favorite artist', 'stevie wonder');
$cache->set('my favorite movie', 'Jurassic Park');

$values = $cache->getMultiple([
    'my favorite artist', 'my favorite movie'
]);

echo print_r($values, true);
// Array
// (
//     [my favorite artist] => stevie wonder
//     [my favorite movie] => Jurassic Park
// )

设置多个缓存

$cache = new FileCache($config);

$cache->setMultiple([
    'my favorite artist' => 'stevie wonder',
    'my favorite movie' => 'Jurassic Park',
]);

echo $cache->get('my favorite artist');     // stevie wonder
echo $cache->get('my favorite movie');      // Jurassic Park

数组缓存

$cache = new ArrayCache($config);

$cache->set('my favorite artist', 'stevie wonder');

echo $cache->get('my favorite artist');     // stevie wonder

sleep(6);

echo $cache->get('my favorite artist');     // 

用法

1. 创建配置数组

  • FileCache 需要 cache/root
  • cache/expire 是可选的(单位:秒)

2. 创建缓存对象

  • 将配置数组传递给构造函数

3. 设置或获取缓存

  • 使用 get() 方法获取缓存项
  • 使用 set() 方法更新缓存项

要求

PHP 7.1 或更高版本

安装 calgamolib/cache

推荐通过 Composer 安装 calgamolib/cache。

composer require calgamolib/cache

安装后,您需要引入 Composer 的自动加载器

require 'vendor/autoload.php';

许可

此库遵循 MIT 许可。

作者

stk2k

免责声明

此软件不提供任何保修。

我们不负责使用此软件导致的任何结果。

请自行承担责任。