class TaggedCache extends Repository (View source)

Traits

Properties

static protected array $macros

The registered string macros.

from  Macroable
protected Store $store

The cache store implementation.

from  Repository
protected Dispatcher $events

The event dispatcher implementation.

from  Repository
protected float|int $default

The default number of minutes to store items.

from  Repository
protected TagSet $tags

The tag set instance.

Methods

int
secondsUntil(DateTimeInterface|DateInterval|int $delay)

Get the number of seconds until the given DateTime.

int
availableAt(DateTimeInterface|DateInterval|int $delay = 0)

Get the "available at" UNIX timestamp.

parseDateInterval(DateTimeInterface|DateInterval|int $delay)

If the given value is an interval, convert it to a DateTime instance.

int
currentTime()

Get the current system time as a UNIX timestamp.

static void
macro(string $name, object|callable $macro)

Register a custom macro.

static void
mixin(object $mixin)

Mix another object into the class.

static bool
hasMacro(string $name)

Checks if macro is registered.

static mixed
__callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

mixed
__call(string $method, array $parameters)

Dynamically handle calls to the class.

void
__construct(Store $store, TagSet $tags)

Create a new tagged cache instance.

bool
has(string $key)

Determine if an item exists in the cache.

mixed
get(string $key, mixed $default = null)

Retrieve an item from the cache by key.

array
many(array $keys)

Retrieve multiple items from the cache by key.

getMultiple($keys, $default = null)

{@inheritdoc}

mixed
handleManyResult(array $keys, string $key, mixed $value)

Handle a result for the "many" method.

mixed
pull(string $key, mixed $default = null)

Retrieve an item from the cache and delete it.

void
put(string $key, mixed $value, DateTimeInterface|DateInterval|float|int $minutes = null)

Store an item in the cache.

set($key, $value, $ttl = null)

{@inheritdoc}

void
putMany(array $values, float|int $minutes)

Store multiple items in the cache for a given number of minutes.

setMultiple($values, $ttl = null)

{@inheritdoc}

bool
add(string $key, mixed $value, DateTimeInterface|DateInterval|float|int $minutes)

Store an item in the cache if the key does not exist.

int|bool
increment(string $key, mixed $value = 1)

Increment the value of an item in the cache.

int|bool
decrement(string $key, mixed $value = 1)

Increment the value of an item in the cache.

void
forever(string $key, mixed $value)

Store an item in the cache indefinitely.

mixed
remember(string $key, DateTimeInterface|DateInterval|float|int $minutes, Closure $callback)

Get an item from the cache, or store the default value.

mixed
sear(string $key, Closure $callback)

Get an item from the cache, or store the default value forever.

mixed
rememberForever(string $key, Closure $callback)

Get an item from the cache, or store the default value forever.

bool
forget(string $key)

Remove an item from the cache.

delete($key)

{@inheritdoc}

deleteMultiple($keys)

{@inheritdoc}

clear()

{@inheritdoc}

tags(array|mixed $names)

Begin executing a new tags operation if the store supports it.

string
itemKey(string $key)

Format the key for a cache item.

float|int
getDefaultCacheTime()

Get the default cache time.

$this
setDefaultCacheTime(float|int $minutes)

Set the default cache time in minutes.

getStore()

Get the cache store implementation.

void
event(string $event)

Fire an event for this cache instance.

void
setEventDispatcher(Dispatcher $events)

Set the event dispatcher instance.

bool
offsetExists(string $key)

Determine if a cached value exists.

mixed
offsetGet(string $key)

Retrieve an item from the cache by key.

void
offsetSet(string $key, mixed $value)

Store an item in the cache for the default time.

void
offsetUnset(string $key)

Remove an item from the cache.

float|int|null
getMinutes(DateTimeInterface|DateInterval|float|int $duration)

Calculate the number of minutes with the given duration.

void
__clone()

Clone cache repository instance.

void
flush()

Remove all items from the cache.

string
taggedItemKey(string $key)

Get a fully qualified key for a tagged item.

Details

protected int secondsUntil(DateTimeInterface|DateInterval|int $delay)

Get the number of seconds until the given DateTime.

Parameters

DateTimeInterface|DateInterval|int $delay

Return Value

int

protected int availableAt(DateTimeInterface|DateInterval|int $delay = 0)

Get the "available at" UNIX timestamp.

Parameters

DateTimeInterface|DateInterval|int $delay

Return Value

int

protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)

If the given value is an interval, convert it to a DateTime instance.

Parameters

DateTimeInterface|DateInterval|int $delay

Return Value

DateTimeInterface|int

protected int currentTime()

Get the current system time as a UNIX timestamp.

Return Value

int

static void macro(string $name, object|callable $macro)

Register a custom macro.

Parameters

string $name
object|callable $macro

Return Value

void

static void mixin(object $mixin)

Mix another object into the class.

Parameters

object $mixin

Return Value

void

static bool hasMacro(string $name)

Checks if macro is registered.

Parameters

string $name

Return Value

bool

static mixed __callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

mixed __call(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

void __construct(Store $store, TagSet $tags)

Create a new tagged cache instance.

Parameters

Store $store
TagSet $tags

Return Value

void

bool has(string $key)

Determine if an item exists in the cache.

Parameters

string $key

Return Value

bool

mixed get(string $key, mixed $default = null)

Retrieve an item from the cache by key.

Parameters

string $key
mixed $default

Return Value

mixed

array many(array $keys)

Retrieve multiple items from the cache by key.

Items not found in the cache will have a null value.

Parameters

array $keys

Return Value

array

getMultiple($keys, $default = null)

{@inheritdoc}

Parameters

$keys
$default

protected mixed handleManyResult(array $keys, string $key, mixed $value)

Handle a result for the "many" method.

Parameters

array $keys
string $key
mixed $value

Return Value

mixed

mixed pull(string $key, mixed $default = null)

Retrieve an item from the cache and delete it.

Parameters

string $key
mixed $default

Return Value

mixed

void put(string $key, mixed $value, DateTimeInterface|DateInterval|float|int $minutes = null)

Store an item in the cache.

Parameters

string $key
mixed $value
DateTimeInterface|DateInterval|float|int $minutes

Return Value

void

set($key, $value, $ttl = null)

{@inheritdoc}

Parameters

$key
$value
$ttl

void putMany(array $values, float|int $minutes)

Store multiple items in the cache for a given number of minutes.

Parameters

array $values
float|int $minutes

Return Value

void

setMultiple($values, $ttl = null)

{@inheritdoc}

Parameters

$values
$ttl

bool add(string $key, mixed $value, DateTimeInterface|DateInterval|float|int $minutes)

Store an item in the cache if the key does not exist.

Parameters

string $key
mixed $value
DateTimeInterface|DateInterval|float|int $minutes

Return Value

bool

int|bool increment(string $key, mixed $value = 1)

Increment the value of an item in the cache.

Parameters

string $key
mixed $value

Return Value

int|bool

int|bool decrement(string $key, mixed $value = 1)

Increment the value of an item in the cache.

Parameters

string $key
mixed $value

Return Value

int|bool

void forever(string $key, mixed $value)

Store an item in the cache indefinitely.

Parameters

string $key
mixed $value

Return Value

void

mixed remember(string $key, DateTimeInterface|DateInterval|float|int $minutes, Closure $callback)

Get an item from the cache, or store the default value.

Parameters

string $key
DateTimeInterface|DateInterval|float|int $minutes
Closure $callback

Return Value

mixed

mixed sear(string $key, Closure $callback)

Get an item from the cache, or store the default value forever.

Parameters

string $key
Closure $callback

Return Value

mixed

mixed rememberForever(string $key, Closure $callback)

Get an item from the cache, or store the default value forever.

Parameters

string $key
Closure $callback

Return Value

mixed

bool forget(string $key)

Remove an item from the cache.

Parameters

string $key

Return Value

bool

delete($key)

{@inheritdoc}

Parameters

$key

deleteMultiple($keys)

{@inheritdoc}

Parameters

$keys

clear()

{@inheritdoc}

TaggedCache tags(array|mixed $names)

Begin executing a new tags operation if the store supports it.

Parameters

array|mixed $names

Return Value

TaggedCache

Exceptions

BadMethodCallException

protected string itemKey(string $key)

Format the key for a cache item.

Parameters

string $key

Return Value

string

float|int getDefaultCacheTime()

Get the default cache time.

Return Value

float|int

$this setDefaultCacheTime(float|int $minutes)

Set the default cache time in minutes.

Parameters

float|int $minutes

Return Value

$this

Store getStore()

Get the cache store implementation.

Return Value

Store

protected void event(string $event)

Fire an event for this cache instance.

Parameters

string $event

Return Value

void

void setEventDispatcher(Dispatcher $events)

Set the event dispatcher instance.

Parameters

Dispatcher $events

Return Value

void

bool offsetExists(string $key)

Determine if a cached value exists.

Parameters

string $key

Return Value

bool

mixed offsetGet(string $key)

Retrieve an item from the cache by key.

Parameters

string $key

Return Value

mixed

void offsetSet(string $key, mixed $value)

Store an item in the cache for the default time.

Parameters

string $key
mixed $value

Return Value

void

void offsetUnset(string $key)

Remove an item from the cache.

Parameters

string $key

Return Value

void

protected float|int|null getMinutes(DateTimeInterface|DateInterval|float|int $duration)

Calculate the number of minutes with the given duration.

Parameters

DateTimeInterface|DateInterval|float|int $duration

Return Value

float|int|null

void __clone()

Clone cache repository instance.

Return Value

void

void flush()

Remove all items from the cache.

Return Value

void

string taggedItemKey(string $key)

Get a fully qualified key for a tagged item.

Parameters

string $key

Return Value

string