nocs/laravel-retriever

简化缓存数据的检索。

v1.1.6 2024-02-14 15:24 UTC

This package is auto-updated.

Last update: 2024-09-14 16:55:43 UTC


README

Latest Version on Packagist Total Downloads

简化缓存数据的检索

安装

使用composer安装

composer require nocs/laravel-retriever

使用方法

将您的缓存文件放在 app/Retrievers(主要)或 app/Cache(次要)下。

为您的类使用 App\RetrieversApp\Cache 命名空间。

使用,如往常一样,studlied 字符串作为类名。在检索时,使用您的键的 snaked 版本。

定义公开的非静态方法,这些方法返回缓存的值。

基本用法

示例: app/Cache/Colors.php

<?php

namespace Nocs\Retriever\Tests\Cache;

class Colors {

    public function red()
    {
        return 'red';
    }

}

使用以下方式检索值

<?php

$value = retriever()->get('colors.red');

使用一个方法

当只使用一个方法时,您可以使用 get 方法。 app/Cache/Colors.php

<?php

namespace Nocs\Retriever\Tests\Cache;

class Colors {

    public function get()
    {
        return 'red';
    }

}

然后使用以下方式检索值

<?php

$value = retriever()->get('colors');

使用命名空间

当创建供应商时,您可以使用命名空间。

为您的缓存文件提供正确的命名空间,例如 MyVendor\Cache

将您的缓存类文件放在 src/Retrieverssrc/Cache 位置。

ServiceProvider 类的 boot 部分中添加位置。

<?php

namespace Vendor\Package\Providers;

use Illuminate\Support\ServiceProvider;
use Nocs\Retriever\Support\Facades\Retriever;

class PackageServiceProvider extends ServiceProvider
{

    public function boot(Router $router)
    {

        Retriever::loadRetrieversFrom(__dir__.'/../Cache', 'package');

    }
}

使用命名空间前缀(snaked)到键检索值

<?php

$value = retriever()->get('my_vendor::colors');

参数

可以提供第二个参数作为数组,该数组将传递给缓存闭包。

简短

而不是使用

<?php

$value = retriever()->get('key');
$value = retriever()->get('key', 'default');

您可以使用

<?php

$value = retriever('key', 'default');

测试

要测试,请运行

composer test

安全性

如果您发现任何安全相关的问题,请通过电子邮件联系 作者 而不是使用问题跟踪器。

致谢

许可

MIT. 请参阅 许可文件 获取更多信息。