gianfriaur / laravel-fast-cache

Laravel Fast Cache

v1.0.0 2023-08-08 18:43 UTC

This package is not auto-updated.

Last update: 2024-10-02 23:22:46 UTC


README

⚽️ 目标

这个库允许您通过几行配置快速为您的包创建新的驱动缓存

✨ 特性

  • 驱动自注册服务
  • 新增缓存存储 FileArrayStore

🤙🏼 快速入门

1) 安装包

composer require gianfriaur/laravel-fast-cache

目前库中不包含额外的配置

如何使用

1) 创建您的服务驱动接口

use Gianfriaur\FastCache\Service\CacheService\CacheServiceInterface;

interface MyLibraryCacheServiceInterface extends CacheServiceInterface {}

2) 注册您的驱动

use Gianfriaur\FastCache\Service\CacheServiceRegister\DefaultCacheServiceRegister;
use Gianfriaur\FastCache\Service\CacheService\DefaultCacheService;
use Gianfriaur\FastCache\Cache\Stores\FileArrayStore;

class ServicesProvider extends ServiceProvider
{
    public function register(): void
    {
        DefaultCacheServiceRegister::registerCacheService(
            $this->app,
            MyLibraryCacheServiceInterface::class,
            DefaultCacheService::class
            [
                'cache_file' => 'cache/my_library_cache.php',
                'file_env_override' => 'MY_LIBRARY_CACHE_FILE',
                'store' => FileArrayStore::class,
                'driver_name' => 'my-library-cache'
            ],
            'my_library.cache_service',
        );
    }
}

3) 使用您的缓存

缓存接口类似于任何Laravel缓存,阅读官方Laravel指南

// if true remember only for debug else remember forever
$is_volatile_memory = (app()->hasDebugModeEnabled() || !App::isProduction()) === true;

$my_data = $is_volatile_memory
    ? Cache::store('my-library-cache')->remember('key_name', 1,fn() => 'key_value')
    : Cache::store('my-library-cache')->rememberForever( 'key_name', fn() => 'key_value')

4) 查看您的缓存

添加了一个新文件 'bootstrap/cache/my_library_cache.php'

📝 下一个版本

  • 添加动态配置服务的功能

🎉 许可证

The Laravel Hyper Controller package is licensed under the terms of the MIT license and is available for free.