class RedisTaggedCache extends TaggedCache (View source)

Traits

Constants

REFERENCE_KEY_FOREVER

Forever reference key.

REFERENCE_KEY_STANDARD

Standard reference key.

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 int|null $default

The default number of seconds to store items.

from  Repository
protected TagSet $tags

The tag set instance.

from  TaggedCache

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, bool $replace = true)

Mix another object into the class.

static bool
hasMacro(string $name)

Checks if macro is registered.

static void
flushMacros()

Flush the existing macros.

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.

bool
missing(string $key)

Determine if an item doesn't exist 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.

iterable
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.

bool
put(string $key, mixed $value, DateTimeInterface|DateInterval|int|null $ttl = null)

Store an item in the cache.

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

{@inheritdoc}

bool
putMany(array $values, int $seconds)

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

bool
putManyForever(array $values)

Store multiple items in the cache indefinitely.

bool
setMultiple($values, $ttl = null)

{@inheritdoc}

bool
add(string $key, mixed $value, DateTimeInterface|DateInterval|int|null $ttl = null)

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)

Decrement the value of an item in the cache.

bool
forever(string $key, mixed $value)

Store an item in the cache indefinitely.

mixed
remember(string $key, DateTimeInterface|DateInterval|int|null $ttl, Closure $callback)

Get an item from the cache, or execute the given Closure and store the result.

mixed
sear(string $key, Closure $callback)

Get an item from the cache, or execute the given Closure and store the result forever.

mixed
rememberForever(string $key, Closure $callback)

Get an item from the cache, or execute the given Closure and store the result forever.

bool
forget(string $key)

Remove an item from the cache.

bool
delete($key)

{@inheritdoc}

bool
deleteMultiple($keys)

{@inheritdoc}

bool
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.

int
getSeconds(DateTimeInterface|DateInterval|int $ttl)

Calculate the number of seconds for the given TTL.

bool
supportsTags()

Determine if the current store supports tags.

int|null
getDefaultCacheTime()

Get the default cache time.

$this
setDefaultCacheTime(int|null $seconds)

Set the default cache time in seconds.

getStore()

Get the cache store implementation.

void
event(object|string $event)

Fire an event for this cache instance.

getEventDispatcher()

Get the event dispatcher 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.

void
__clone()

Clone cache repository instance.

bool
flush()

Remove all items from the cache.

string
taggedItemKey(string $key)

Get a fully qualified key for a tagged item.

getTags()

Get the tag set instance.

void
pushStandardKeys(string $namespace, string $key)

Store standard key references into store.

void
pushForeverKeys(string $namespace, string $key)

Store forever key references into store.

void
pushKeys(string $namespace, string $key, string $reference)

Store a reference to the cache key against the reference key.

void
deleteForeverKeys()

Delete all of the items that were stored forever.

void
deleteStandardKeys()

Delete all standard items.

void
deleteKeysByReference(string $reference)

Find and delete all of the items that were stored against a reference.

void
deleteValues(string $referenceKey)

Delete item keys that have been stored against a reference.

string
referenceKey(string $segment, string $suffix)

Get the reference key for the segment.

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, bool $replace = true)

Mix another object into the class.

Parameters

object $mixin
bool $replace

Return Value

void

Exceptions

ReflectionException

static bool hasMacro(string $name)

Checks if macro is registered.

Parameters

string $name

Return Value

bool

static void flushMacros()

Flush the existing macros.

Return Value

void

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

bool missing(string $key)

Determine if an item doesn't exist 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

iterable getMultiple($keys, $default = null)

{@inheritdoc}

Parameters

$keys
$default

Return Value

iterable

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

bool put(string $key, mixed $value, DateTimeInterface|DateInterval|int|null $ttl = null)

Store an item in the cache.

Parameters

string $key
mixed $value
DateTimeInterface|DateInterval|int|null $ttl

Return Value

bool

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

{@inheritdoc}

Parameters

$key
$value
$ttl

Return Value

bool

bool putMany(array $values, int $seconds)

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

Parameters

array $values
int $seconds

Return Value

bool

protected bool putManyForever(array $values)

Store multiple items in the cache indefinitely.

Parameters

array $values

Return Value

bool

bool setMultiple($values, $ttl = null)

{@inheritdoc}

Parameters

$values
$ttl

Return Value

bool

bool add(string $key, mixed $value, DateTimeInterface|DateInterval|int|null $ttl = null)

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

Parameters

string $key
mixed $value
DateTimeInterface|DateInterval|int|null $ttl

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)

Decrement the value of an item in the cache.

Parameters

string $key
mixed $value

Return Value

int|bool

bool forever(string $key, mixed $value)

Store an item in the cache indefinitely.

Parameters

string $key
mixed $value

Return Value

bool

mixed remember(string $key, DateTimeInterface|DateInterval|int|null $ttl, Closure $callback)

Get an item from the cache, or execute the given Closure and store the result.

Parameters

string $key
DateTimeInterface|DateInterval|int|null $ttl
Closure $callback

Return Value

mixed

mixed sear(string $key, Closure $callback)

Get an item from the cache, or execute the given Closure and store the result forever.

Parameters

string $key
Closure $callback

Return Value

mixed

mixed rememberForever(string $key, Closure $callback)

Get an item from the cache, or execute the given Closure and store the result 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

bool delete($key)

{@inheritdoc}

Parameters

$key

Return Value

bool

bool deleteMultiple($keys)

{@inheritdoc}

Parameters

$keys

Return Value

bool

bool clear()

{@inheritdoc}

Return Value

bool

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

protected int getSeconds(DateTimeInterface|DateInterval|int $ttl)

Calculate the number of seconds for the given TTL.

Parameters

DateTimeInterface|DateInterval|int $ttl

Return Value

int

bool supportsTags()

Determine if the current store supports tags.

Return Value

bool

int|null getDefaultCacheTime()

Get the default cache time.

Return Value

int|null

$this setDefaultCacheTime(int|null $seconds)

Set the default cache time in seconds.

Parameters

int|null $seconds

Return Value

$this

Store getStore()

Get the cache store implementation.

Return Value

Store

protected void event(object|string $event)

Fire an event for this cache instance.

Parameters

object|string $event

Return Value

void

Dispatcher getEventDispatcher()

Get the event dispatcher instance.

Return Value

Dispatcher

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

void __clone()

Clone cache repository instance.

Return Value

void

bool flush()

Remove all items from the cache.

Return Value

bool

string taggedItemKey(string $key)

Get a fully qualified key for a tagged item.

Parameters

string $key

Return Value

string

TagSet getTags()

Get the tag set instance.

Return Value

TagSet

protected void pushStandardKeys(string $namespace, string $key)

Store standard key references into store.

Parameters

string $namespace
string $key

Return Value

void

protected void pushForeverKeys(string $namespace, string $key)

Store forever key references into store.

Parameters

string $namespace
string $key

Return Value

void

protected void pushKeys(string $namespace, string $key, string $reference)

Store a reference to the cache key against the reference key.

Parameters

string $namespace
string $key
string $reference

Return Value

void

protected void deleteForeverKeys()

Delete all of the items that were stored forever.

Return Value

void

protected void deleteStandardKeys()

Delete all standard items.

Return Value

void

protected void deleteKeysByReference(string $reference)

Find and delete all of the items that were stored against a reference.

Parameters

string $reference

Return Value

void

protected void deleteValues(string $referenceKey)

Delete item keys that have been stored against a reference.

Parameters

string $referenceKey

Return Value

void

protected string referenceKey(string $segment, string $suffix)

Get the reference key for the segment.

Parameters

string $segment
string $suffix

Return Value

string