robinn/cache

支持Redis、Memcached、APCu和文件的PHP简单缓存。

2.6.2 2024-02-17 19:22 UTC

This package is auto-updated.

Last update: 2024-09-27 10:26:26 UTC


README

支持Redis、Memcached、APCu和文件的PHP简单缓存。

Visitor Badge

安装

composer require robinn/cache

用法

$cache = new RobiNN\Cache\Cache([
    // Available config options
    'storage'   => 'file', // apcu|file|memcached|redis
    'file'      => [
        'path' => __DIR__.'/cache', // The path to the folder containing the cached content.
        //'secret' => 'secret_key', // For securing file names (optional).
        //'remove_expired' => true, // Automatically remove all expired keys (it can affect performance) (optional).
    ],
    'redis'     => [
        'host' => '127.0.0.1', // Optional when a path is specified.
        'port' => 6379, // Optional when the default port is used.
        //'database' => 0, // Default database (optional).
        //'username' => '', // ACL - requires Redis >= 6.0 (optional).
        //'password' => '', // Optional.
        //'path' => '/var/run/redis/redis-server.sock', // Unix domain socket (optional).
    ],
    'memcached' => [
        'host' => '127.0.0.1', // Optional when a path is specified.
        'port' => 11211, // Optional when the default port is used.
        //'path' => '/var/run/memcached/memcached.sock', // Unix domain socket (optional).
        //'sasl_username' => '', // SASL auth (optional).
        //'sasl_password' => '', // SASL auth (optional).
    ],
]);

$key = 'item-key';

if ($cache->exists($key)) {
    $data = $cache->get($key);
} else {
    $data = 'item-value';
    $cache->set($key, $data);
}

// The above code can also be shortened to one line
$data = $cache->remember($key, 'item-value');

print_r($data); // item-value

方法

需求

  • PHP >= 8.2