perf / caching
3.1.1
2021-09-11 02:35 UTC
Requires
- php: >=7.4
- perf/timing: ^2.0
Requires (Dev)
- ext-xdebug: *
- pdepend/pdepend: ^2.10
- phing/phing: ^2.17
- phpmd/phpmd: ^2.10
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.6
Suggests
- ext-memcached: Memcached storage
README
允许使用(Memcached、文件系统等)进行数据缓存。
用法
初始化
<?php use perf\Caching\CacheClient; use perf\Caching\Storage\FileSystemCachingStorage; use perf\Caching\Storage\MemcachedCachingStorage; use perf\Caching\Storage\NullCachingStorage; use perf\Caching\Storage\VolatileCachingStorage; // Memcached $storage = MemcachedCachingStorage::createFromCredentials('1.2.3.4', 123); $cache = CacheClient::createWithStorage($storage); // Volatile storage $storage = new VolatileCachingStorage(); $cache = CacheClient::createWithStorage($storage); // File-system storage $storage = new FileSystemCachingStorage('/tmp/cache'); $cache = CacheClient::createWithStorage($storage); // Null storage (caches nothing) $storage = new NullCachingStorage(); $cache = CacheClient::createWithStorage($storage);
存储和检索数据
<?php $objectToStore = new \stdClass(); $objectToStore->bar = 'baz'; $cache->store('foo', $objectToStore); // ... $object = $cache->tryFetch('foo');