class StorageStore implements Store (View source)

Traits

Properties

protected Filesystem $disk

The filesystem disk instance.

protected string $directory

The storage path where cache files should be written.

protected string $prefix

A string that should be prepended to keys.

protected array|bool|null $serializableClasses

The classes that should be allowed during unserialization.

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.

string
runTimeForHumans(float $startTime, float|null $endTime = null)

Given a start time, format the total run time for human readability.

array
many(array $keys)

Retrieve multiple items from the cache by key.

bool
putMany(array $values, int $seconds)

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

__construct(Filesystem $disk, string $directory = '', string $prefix = '', array|bool|null $serializableClasses = null)

Create a new storage cache store instance.

mixed
get(string $key)

Retrieve an item from the cache by key.

bool
put(string $key, mixed $value, int $seconds)

Store an item in the cache for a given number of seconds.

bool
add(string $key, mixed $value, int $seconds)

Store an item in the cache if the key doesn't 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.

bool
touch(string $key, int $seconds)

Adjust the expiration time of a cached item.

bool
forget(string $key)

Remove an item from the cache.

bool
flush()

Remove all items from the cache.

array
getPayload(string $key)

Retrieve an item and expiry time from the cache by key.

mixed
unserialize(string $value)

Unserialize the given value.

array
emptyPayload()

Get a default empty payload for the cache.

string
path(string $key)

Get the full path for the given cache key.

int
expiration(int $seconds)

Get the expiration time based on the given seconds.

getDisk()

Get the filesystem disk instance.

string
getDirectory()

Get the working directory of the cache.

string
getPrefix()

Get the cache key prefix.

void
setPrefix(string $prefix)

Set the cache key prefix.

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

protected string runTimeForHumans(float $startTime, float|null $endTime = null)

Given a start time, format the total run time for human readability.

Parameters

float $startTime
float|null $endTime

Return Value

string

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

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

__construct(Filesystem $disk, string $directory = '', string $prefix = '', array|bool|null $serializableClasses = null)

Create a new storage cache store instance.

Parameters

Filesystem $disk
string $directory
string $prefix
array|bool|null $serializableClasses

mixed get(string $key)

Retrieve an item from the cache by key.

Parameters

string $key

Return Value

mixed

bool put(string $key, mixed $value, int $seconds)

Store an item in the cache for a given number of seconds.

Parameters

string $key
mixed $value
int $seconds

Return Value

bool

bool add(string $key, mixed $value, int $seconds)

Store an item in the cache if the key doesn't exist.

Parameters

string $key
mixed $value
int $seconds

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

bool touch(string $key, int $seconds)

Adjust the expiration time of a cached item.

Parameters

string $key
int $seconds

Return Value

bool

bool forget(string $key)

Remove an item from the cache.

Parameters

string $key

Return Value

bool

bool flush()

Remove all items from the cache.

Return Value

bool

protected array getPayload(string $key)

Retrieve an item and expiry time from the cache by key.

Parameters

string $key

Return Value

array

protected mixed unserialize(string $value)

Unserialize the given value.

Parameters

string $value

Return Value

mixed

protected array emptyPayload()

Get a default empty payload for the cache.

Return Value

array

string path(string $key)

Get the full path for the given cache key.

Parameters

string $key

Return Value

string

protected int expiration(int $seconds)

Get the expiration time based on the given seconds.

Parameters

int $seconds

Return Value

int

Filesystem getDisk()

Get the filesystem disk instance.

Return Value

Filesystem

string getDirectory()

Get the working directory of the cache.

Return Value

string

string getPrefix()

Get the cache key prefix.

Return Value

string

void setPrefix(string $prefix)

Set the cache key prefix.

Parameters

string $prefix

Return Value

void