apcu_add
(PECL apcu >= 4.0.0)
apcu_add — Cache a new variable in the data store
Описание
Caches a variable in the data store, only if it's not already stored.
Замечание: Unlike many other mechanisms in PHP, variables stored using apcu_add() will persist between requests (until the value is removed from the cache).
Список параметров
-
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 returnFALSE
. (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 forttl
seconds. After thettl
has passed, the stored variable will be expunged from the cache (on the next request). If nottl
is supplied (or if thettl
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.
Возвращаемые значения
Returns TRUE if something has effectively been added into the cache, FALSE otherwise. Second syntax returns array with error keys.
Примеры
Пример #1 A apcu_add() example
<?php
$bar = 'BAR';
apcu_add('foo', $bar);
var_dump(apcu_fetch('foo'));
echo "\n";
$bar = 'NEVER GETS SET';
apcu_add('foo', $bar);
var_dump(apcu_fetch('foo'));
echo "\n";
?>
Результат выполнения данного примера:
string(3) "BAR" string(3) "BAR"
Смотрите также
- apcu_store() - Cache a variable in the data store
- apcu_fetch() - Fetch a stored variable from the cache
- apcu_delete() - Removes a stored variable from the cache
Коментарии
This is usable for locking/unlocking
<?php
do {} while (!apcu_add('lock_name', 'foo', 10));
// this part is protected against multiple/multithread run
apcu_delete('lock_name');