composer require irooit/i-cache
创建配置文件
php bin/hyperf.php vendor:publish irooit/i-cache
配置如下
因为其他缓存驱动暂时无法被协程化,所以只支持 array file 和 redis
<?php
declare(strict_types=1);
use Hyperf\Utils\Str;
return [
/*
|--------------------------------------------------------------------------
| Default Cache Store
|--------------------------------------------------------------------------
|
| This option controls the default cache connection that gets used while
| using this caching library. This connection is used when another is
| not explicitly specified when executing a given caching function.
|
*/
'default' => env('CACHE_DRIVER', 'array'),
/*
|--------------------------------------------------------------------------
| Cache Stores
|--------------------------------------------------------------------------
|
| Here you may define all of the cache "stores" for your application as
| well as their drivers. You may even define multiple stores for the
| same cache driver to group types of items stored in your caches.
|
| Supported drivers: "apc", "array", "database", "file",
| "memcached", "redis", "dynamodb", "null"
|
*/
'stores' => [
'array' => [
'driver' => 'array',
'serialize' => false,
],
'file' => [
'driver' => 'file',
'path' => BASE_PATH . '/storage/cache/data',
],
'redis' => [
'driver' => 'redis',
'connection' => 'default',
'lock_connection' => 'default',
],
],
/*
|--------------------------------------------------------------------------
| Cache Key Prefix
|--------------------------------------------------------------------------
|
| When utilizing a RAM based store such as APC or Memcached, there might
| be other applications utilizing the same cache. So, we'll specify a
| value to get prefixed to all our keys so we can avoid collisions.
|
*/
'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'hyperf'), '_') . '_cache'),
];
文档地址 https://learnku.com/docs/laravel/8.x/cache/9389
本组件实现了与 Laravel 一模一样的助手函数,但增加了命名空间,故使用时,可以按照以下方式
<?php
use function Illuminate\Cache\cache;
cache()->put('xxx', 'yyy');