apcu_cas

(PECL apcu >= 4.0.0)

apcu_casUpdates an old value with a new value

说锟斤拷

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

apcu_cas() updates an already existing integer value if the old parameter matches the currently stored value with the value of the new parameter.

锟斤拷锟斤拷

key

The key of the value being updated.

old

The old value (the value currently stored).

new

The new value to update to.

锟斤拷锟斤拷值

锟缴癸拷时锟斤拷锟斤拷 TRUE锟斤拷 锟斤拷锟斤拷锟斤拷失锟斤拷时锟斤拷锟斤拷 FALSE锟斤拷

锟斤拷锟斤拷

Example #1 apcu_cas() example

<?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

锟轿硷拷