Caches a variable in the data store, only if it's not already stored.
Note
:
Unlike many other mechanisms in PHP, variables stored using
apcu_add()
will persist between requests (until the value is removed from the cache).
Parameters
key
Store the variable using this name.
key
s are cache-unique, so attempting to use
apcu_add()
to store data with a key that already exists will not overwrite the existing data, and will instead return
false
. (This is the only difference between
apcu_add()
and
apcu_store()
.)
var
The variable to store
ttl
Time To Live; store
var
in the cache for
ttl
seconds. After the
ttl
has passed, the stored variable will be expunged from the cache (on the next request). If no
ttl
is supplied (or if the
ttl
is
0
), the value will persist until it is removed from the cache manually, or otherwise fails to exist in the cache (clear, restart, etc.).
values
Names in key, variables in value.
Return Values
Returns TRUE if something has effectively been added into the cache, FALSE otherwise. Second syntax returns array with error keys.
apcu_fetch() - Fetch a stored variable from the cache
apcu_delete() - Removes a stored variable from the cache
PHP / apcu_cache_info — DevDocs
apcu_cache_info
(PECL apcu >= 4.0.0)
apcu_cache_info
—
Retrieves cached information from APCu's data store
Description
apcu_cache_info(bool$limited=false):array|false
Retrieves cached information and meta-data from APC's data store.
Parameters
limited
If
limited
is
true
, the return value will exclude the individual list of cache entries. This is useful when trying to optimize calls for statistics gathering.
Return Values
Array of cached data (and meta-data) or
false
on failure
Note
:
apcu_cache_info()
will raise a warning if it is unable to retrieve APC cache data. This typically occurs when APC is not enabled.
Changelog
Version
Description
PECL apcu 3.0.11
The
limited
parameter was introduced.
PECL apcu 3.0.16
The "
filehits
" option for the
cache_type
parameter was introduced.
Examples
Example #1 A
apcu_cache_info()
example
<?phpprint_r(apcu_cache_info());?>
The above example will output something similar to:
Optionally pass the success or fail boolean value to this referenced variable.
ttl
TTL to use if the operation inserts a new value (rather than decrementing an existing one).
Return Values
Returns the current value of
key
's value on success, or
false
on failure
Examples
Example #1
apcu_dec()
example
<?phpecho"Let's do something with success",PHP_EOL;apcu_store('anumber',42);echoapcu_fetch('anumber'),PHP_EOL;echoapcu_dec('anumber'),PHP_EOL;echoapcu_dec('anumber',10),PHP_EOL;echoapcu_dec('anumber',10,$success),PHP_EOL;var_dump($success);echo"Now, let's fail",PHP_EOL,PHP_EOL;apcu_store('astring','foo');$ret=apcu_dec('astring',1,$fail);var_dump($ret);var_dump($fail);?>
The above example will output something similar to:
Let's do something with success
42
41
31
21
bool(true)
Now, let's fail
bool(false)
bool(false)
apcu_delete
—
Removes a stored variable from the cache
Description
apcu_delete(mixed$key):mixed
Removes a stored variable from the cache.
Parameters
key
A
key
used to store the value as a
string
for a single key, or as an
array
of strings for several keys, or as an
APCUIterator
object
.
Return Values
If
key
is an
array
, an indexed
array
of the keys is returned. Otherwise
true
is returned on success, or
false
on failure.
Examples
Example #1 A
apcu_delete()
example
<?php$bar='BAR';apcu_store('foo',$bar);apcu_delete('foo');// this is obviously useless in this form// Alternatively delete multiple keys.apcu_delete(['foo','bar','baz']);// Or use an Iterator with a regular expression.apcu_delete(newAPCUIterator('#^myprefix_#'));?>
See Also
apcu_store() - Cache a variable in the data store
apcu_fetch() - Fetch a stored variable from the cache