35 lines
703 B
PHP
35 lines
703 B
PHP
|
<?php
|
||
|
|
||
|
namespace App\Models\Traits;
|
||
|
|
||
|
use Closure;
|
||
|
|
||
|
interface CachableAttributes
|
||
|
{
|
||
|
/**
|
||
|
* Get an item from the cache, or execute the given Closure and store the result.
|
||
|
*
|
||
|
*
|
||
|
* @return mixed
|
||
|
*/
|
||
|
public function remember(string $key, ?int $ttl, Closure $callback);
|
||
|
|
||
|
/**
|
||
|
* Get an item from the cache, or execute the given Closure and store the result forever.
|
||
|
*
|
||
|
*
|
||
|
* @return mixed
|
||
|
*/
|
||
|
public function rememberForever(string $key, Closure $callback);
|
||
|
|
||
|
/**
|
||
|
* Remove an item from the cache.
|
||
|
*/
|
||
|
public function forget(string $key): bool;
|
||
|
|
||
|
/**
|
||
|
* Remove all items from the cache.
|
||
|
*/
|
||
|
public function flush(): bool;
|
||
|
}
|