PHP 8.1.0 RC 2 available for testing

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'12) ? 'ok' 'fail'), PHP_EOL;
echo 
'$foobar == 2 ? 1 : 2 = ', (apcu_cas('foobar'21) ? 'ok' 'fail'), PHP_EOL;

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

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

apcu_store('perfection''xyz');
echo 
'$perfection == 2 ? 1 : 2 = ', (apcu_cas('perfection'21) ? '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 add a note

User Contributed Notes 1 note

up
-5
Anonymous
3 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