apcu_cas

(PECL apcu >= 4.0.0)

apcu_casЗаменяет старое значение на новое

Описание

apcu_cas(string $key, int $old, int $new): bool

apcu_cas() заменяет значение уже существующего целочисленного значения, если оно равно old на new.

Список параметров

key

Ключ изменяемого значения.

old

Старое значение (которое в данный момент хранится в кеше).

new

Новое значение.

Возвращаемые значения

Возвращает true в случае успешного выполнения или false, если возникла ошибка.

Примеры

Пример #1 Пример использования apcu_cas()

<?php
apcu_store
('foobar', 2);
echo
'$foobar = 2', PHP_EOL;
echo
'$foobar == 1 ? 2 : 1 = ', (apcu_cas('foobar', 1, 2) ? 'ok' : 'fail'), PHP_EOL;
echo
'$foobar == 2 ? 1 : 2 = ', (apcu_cas('foobar', 2, 1) ? 'ok' : 'fail'), PHP_EOL;

echo
'$foobar = ', apcu_fetch('foobar'), PHP_EOL;

echo
'$f__bar == 1 ? 2 : 1 = ', (apcu_cas('f__bar', 1, 2) ? 'ok' : 'fail'), PHP_EOL;

apcu_store('perfection', 'xyz');
echo
'$perfection == 2 ? 1 : 2 = ', (apcu_cas('perfection', 2, 1) ? 'ok' : 'epic fail'), PHP_EOL;

echo
'$foobar = ', apcu_fetch('foobar'), PHP_EOL;
?>

Вывод приведённого примера будет похож на:

$foobar = 2
$foobar == 1 ? 2 : 1 = fail
$foobar == 2 ? 1 : 2 = ok
$foobar = 1
$f__bar == 1 ? 2 : 1 = fail
$perfection == 2 ? 1 : 2 = epic fail
$foobar = 1

Смотрите также

  • apcu_dec() - Уменьшить сохранённое число
  • apcu_store() - Кеширует переменную
add a note

User Contributed Notes 1 note

up
-7
Anonymous
6 years ago
The output in the example says:

$f__bar == 1 ? 2 : 1 = fail

but in reality it should be:

$f__bar == 1 ? 2 : 1 = ok

the first time the code is ran as the cache is empty and apcu_cas allows the key to be inserted.
To Top