divineomega/do-file-cache

DO 文件缓存是一个基于文件的 PHP 缓存库。它的语法设计得非常类似于 PHP 的 memcache 扩展。

资助包维护!
DivineOmega

安装: 1,548,995

依赖: 9

建议者: 0

安全: 0

星标: 16

关注者: 4

分支: 5

开放问题: 1

v2.0.6 2018-12-31 09:36 UTC

README

Build Status Coverage Status StyleCI Packagist

DO 文件缓存是一个基于文件的 PHP 缓存库。

它的语法设计得非常类似于 PHP 的 memcache 扩展。

安装

您可以使用 composer 轻松安装。只需运行 composer require divineomega/do-file-cache

如果您需要 PSR-6 缓存,请查看 DO 文件缓存的 PSR-6 适配器

用法

本节将向您展示如何使用 DO 文件缓存。如果您之前使用过 memcache,这应该非常熟悉。

设置 & 配置

在您可以使用 DO 文件缓存之前,您必须实例化它,然后,如果您希望,设置一些配置选项。

require_once "vendor/autoload.php";

$cache = new \DivineOmega\DOFileCache\DOFileCache();

$cache->changeConfig(["cacheDirectory" => "/tmp/DOFileCacheStorage/"]);

以下代码创建了一个名为 $cache 的新 DO 文件缓存对象,并将其配置为在 /tmp/DOFileCacheStorage/ 目录中存储其缓存文件。

您可以根据需要覆盖几个不同的配置变量。下表描述了它们。

设置缓存项

将内容放入文件缓存非常简单。您只需使用以下示例中所示的 set 方法。

$cache->set('nursery_rhyme',"Mary had a little lamb", strtotime('+ 1 day'));

第一个参数是缓存键,它唯一引用此缓存项。

第二个参数是缓存值 - 您希望存储在此缓存项中的内容。这可以是字符串、整数、数组、对象或任何类型的可序列化 PHP 变量。

第三个参数是过期时间。它可以指定为 UNIX 时间戳或为少于 30 天的秒数。当达到此时间时,缓存项将过期且无法检索。

请注意,如果您在缓存键中使用点、连字符、下划线或其他一些特殊字符,创建的缓存文件将放入目录结构中。例如,缓存键 objects.cars.redCar 将存储在 objects/cars/redCar.cache 中。如果您希望分类缓存文件并防止太多缓存文件堆积在单个目录中,这很有用。

获取缓存项

要获取之前存储的缓存项,您需要使用 get 方法。以下是如何操作的示例。

$var = $cache->get('nursery_rhyme');

唯一的参数是您设置缓存项时定义的缓存键。您可以通过这种方式检索任何已缓存的变量。

其他 DO 文件缓存方法

设置和检索缓存项是 DO 文件缓存最重要的部分。实际上,setget 方法可能就是您需要的全部。

但是,如果需要,库提供了以下更高级的命令。

  • $cache->delete($key) - 从缓存中删除特定的项。
  • $cache->flush() - 删除缓存中的所有项。
  • $cache->replace($key, $content, $expiry) - 与 set 方法类似,但仅当缓存项已存在时才会更新缓存项的值。
  • $cache->increment($key, $offset) - 通过指定的偏移量(或省略偏移量时为 1)增加数值缓存项的值。
  • $cache->decrement($key, $offset) - 通过指定的偏移量(或省略偏移量时为 1)减少数值缓存项的值。