singlequote/laravel-cacher

基于 Laravel 文件缓存驱动器的强大缓存器

1.0.1 2023-02-09 13:35 UTC

This package is auto-updated.

Last update: 2024-09-09 16:47:35 UTC


README

基于 Laravel 文件缓存驱动器的强大缓存特质

Latest Version on Packagist Total Downloads

安装

composer require singlequote/laravel-cacher

使用方法

模型缓存

有时你只是想缓存 Eloquent 模型结果。使用模型缓存,你可以做到这一点,而不会让你的代码变得一团糟。只需在你的模型中包含 cacher 特质

namespace App;

use Illuminate\Foundation\Auth\User as Authenticatable; //<= basic shizzle
use Illuminate\Contracts\Auth\MustVerifyEmail; //<= basic shizzle

use SingleQuote\Cacher\Traits\Cacher; //⇐ this one

class User extends Authenticatable implements MustVerifyEmail
{
    use Cacher; //<=  require the model to use the trait
}

现在,每次调用你的 App\User 模型时,你都可以使用缓存特质

use App\User;

$users = User::whereEmail('foo@bar.world')->remember(); //<= default ttl is 7 days
$users = User::whereEmail('foo@bar.world')->remember(3600); //<= 1 hour

//or keep it forever by your side <3
$users = User::whereEmail('foo@bar.world')->rememberForever();

自定义前缀

默认情况下,缓存前缀是唯一的。你可以通过调用 prefix 方法使用自己的前缀

    $users = User::whereEmail('foo@bar.world')->prefix("all-users")->remember(); //prefix all-users
    
    cache()->forget("all-users");

所有方法

   $users = User::whereEmail('foo@bar.world')->remember(/*3600*/); //for 1 hour -  default 7 days
   $users = User::whereEmail('foo@bar.world')->rememberForever(); //for ever
   
   //find
   $user = User::whereEmail('foo@bar.world')->findAndRemember(1, /*3600*/);
   $user = User::whereEmail('foo@bar.world')->findAndRememberForever(1);
   
   //first
   $user = User::whereEmail('foo@bar.world')->firstAndRemember(/*3600*/);
   $user = User::whereEmail('foo@bar.world')->firstAndRememberForever();
   
   //counting
   $user = User::whereEmail('foo@bar.world')->rememberCount(/*3600*/);
   $user = User::whereEmail('foo@bar.world')->rememberCountForever();
   
   //paginating
   $user = User::whereEmail('foo@bar.world')->paginateAndRemember(20, /*3600*/); //return 20 results
   $user = User::whereEmail('foo@bar.world')->paginateAndRememberForever(20); //return 20 results

贡献

有关详细信息,请参阅 CONTRIBUTING

明信片软件

你可以自由使用这个包,但如果它进入了你的生产环境,我们非常感激你从家乡给我们寄一张明信片,并提到你正在使用我们的哪个包。

我们的地址是:Quotec, Traktieweg 8c 8304 BA, Emmeloord, Netherlands。

鸣谢

许可

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件