TaggedCache
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 int|null | $default | The default number of seconds to store items. |
from Repository |
protected TagSet | $tags | The tag set instance. |
Methods
Get the number of seconds until the given DateTime.
If the given value is an interval, convert it to a DateTime instance.
Mix another object into the class.
Dynamically handle calls to the class.
Dynamically handle calls to the class.
Retrieve an item from the cache by key.
Handle a result for the "many" method.
Retrieve an item from the cache and delete it.
Store an item in the cache.
Store multiple items in the cache for a given number of seconds.
Store an item in the cache if the key does not exist.
Increment the value of an item in the cache.
Decrement the value of an item in the cache.
Get an item from the cache, or execute the given Closure and store the result.
Get an item from the cache, or execute the given Closure and store the result forever.
Get an item from the cache, or execute the given Closure and store the result forever.
Begin executing a new tags operation if the store supports it.
Format the key for a cache item.
Calculate the number of seconds for the given TTL.
Fire an event for this cache instance.
Store an item in the cache for the default time.
Remove all items from the cache.
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.
protected int
availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Get the "available at" UNIX timestamp.
protected DateTimeInterface|int
parseDateInterval(DateTimeInterface|DateInterval|int $delay)
If the given value is an interval, convert it to a DateTime instance.
protected 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.
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.
Items not found in the cache will have a null value.
iterable
getMultiple($keys, $default = null)
{@inheritdoc}
protected 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, DateTimeInterface|DateInterval|int|null $ttl = null)
Store multiple items in the cache for a given number of seconds.
protected 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}
TaggedCache
tags(array|mixed $names)
Begin executing a new tags operation if the store supports it.
protected string
itemKey(string $key)
Format the key for a cache item.
protected 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.
Store
getStore()
Get the cache store implementation.
protected void
event(object|string $event)
Fire an event for this cache instance.
Dispatcher
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.
TagSet
getTags()
Get the tag set instance.