Documentation

CRM_Utils_Cache_ArrayCache
in package
implements CRM_Utils_Cache_Interface uses CRM_Utils_Cache_NaiveMultipleTrait, CRM_Utils_Cache_NaiveHasTrait

Class CRM_Utils_Cache_ArrayCache

Table of Contents

Interfaces

CRM_Utils_Cache_Interface

Constants

DEFAULT_TIMEOUT  = 3600

Properties

$_cache  : array<string|int, mixed>
The cache storage container, an in memory array by default
$_expires  : mixed

Methods

__construct()  : CRM_Utils_Cache_ArrayCache
Constructor.
clear()  : bool
Delete all values from the cache.
delete()  : bool
Delete a value from the cache.
deleteMultiple()  : bool
Deletes multiple cache items in a single operation.
flush()  : bool
Delete all values from the cache.
get()  : mixed
Get a value from the cache.
getExpires()  : int|null
getMultiple()  : iterable<string|int, mixed>
Obtains multiple cache items by their unique keys.
has()  : mixed
set()  : bool
Set the value in the cache.
setMultiple()  : bool
Persists a set of key => value pairs in the cache, with an optional TTL.
assertIterable()  : mixed
reobjectify()  : mixed

Constants

DEFAULT_TIMEOUT

public mixed DEFAULT_TIMEOUT = 3600

Properties

$_cache

The cache storage container, an in memory array by default

protected array<string|int, mixed> $_cache

Methods

clear()

Delete all values from the cache.

public clear() : bool

NOTE: flush() and clear() should be aliases. flush() is specified by Civi's traditional interface, and clear() is specified by PSR-16.

Return values
bool

delete()

Delete a value from the cache.

public delete(string $key) : bool
Parameters
$key : string
Tags
throws
InvalidArgumentException
Return values
bool

deleteMultiple()

Deletes multiple cache items in a single operation.

public deleteMultiple(iterable<string|int, mixed> $keys) : bool
Parameters
$keys : iterable<string|int, mixed>

A list of string-based keys to be deleted.

Tags
throws
InvalidArgumentException

MUST be thrown if $keys is neither an array nor a Traversable, or if any of the $keys are not a legal value.

Return values
bool

True if the items were successfully removed. False if there was an error.

flush()

Delete all values from the cache.

public flush() : bool

NOTE: flush() and clear() should be aliases. flush() is specified by Civi's traditional interface, and clear() is specified by PSR-16.

Return values
bool

get()

Get a value from the cache.

public get(string $key[, mixed $default = NULL ]) : mixed
Parameters
$key : string
$default : mixed = NULL
Tags
throws
InvalidArgumentException

getExpires()

public getExpires(string $key) : int|null
Parameters
$key : string
Return values
int|null

getMultiple()

Obtains multiple cache items by their unique keys.

public getMultiple(iterable<string|int, mixed> $keys[, mixed $default = NULL ]) : iterable<string|int, mixed>
Parameters
$keys : iterable<string|int, mixed>

A list of keys that can obtained in a single operation.

$default : mixed = NULL

Default value to return for keys that do not exist.

Tags
throws
InvalidArgumentException

MUST be thrown if $keys is neither an array nor a Traversable, or if any of the $keys are not a legal value.

Return values
iterable<string|int, mixed>

A list of key => value pairs. Cache keys that do not exist or are stale will have $default as value.

has()

public has(mixed $key) : mixed
Parameters
$key : mixed

set()

Set the value in the cache.

public set(string $key, mixed $value[, null|int|DateInterval $ttl = NULL ]) : bool
Parameters
$key : string
$value : mixed
$ttl : null|int|DateInterval = NULL
Tags
throws
InvalidArgumentException
Return values
bool

setMultiple()

Persists a set of key => value pairs in the cache, with an optional TTL.

public setMultiple(iterable<string|int, mixed> $values[, null|int|DateInterval $ttl = NULL ]) : bool
Parameters
$values : iterable<string|int, mixed>

A list of key => value pairs for a multiple-set operation.

$ttl : null|int|DateInterval = NULL

Optional. The TTL value of this item. If no value is sent and the driver supports TTL then the library may set a default value for it or let the driver take care of that.

Tags
throws
InvalidArgumentException

MUST be thrown if $values is neither an array nor a Traversable, or if any of the $values are not a legal value.

Return values
bool

True on success and false on failure.

reobjectify()

private reobjectify(mixed $value) : mixed
Parameters
$value : mixed

        
On this page

Search results