查詢

Memcached::cas()函式—用法及示例

「 比較並交換給定鍵的值 」


函式名稱:Memcached::cas()

適用版本:PHP 5 >= 5.1.0, PECL memcached >= 0.1.0

函式描述:用於比較並交換給定鍵的值。如果該鍵在伺服器上的版本與給定的cas_token匹配,則將該鍵的值設定為給定的新值。

語法:bool Memcached::cas(string $cas_token, string $key, mixed $value [, int $expiration = 0 ])

引數:

  • $cas_token:鍵的CAS令牌,用於標識伺服器上儲存的鍵的版本。可以透過Memcached::getCas()獲取。
  • $key:要比較並交換值的鍵名。
  • $value:要設定的新值。
  • $expiration(可選):鍵的過期時間(以秒為單位)。預設為0,表示不過期。

返回值:成功時返回true,失敗時返回false。

示例:

$memcached = new Memcached();
$memcached->addServer('localhost', 11211);

$key = 'example_key';
$value = 'example_value';

// 儲存一個鍵值對
$memcached->set($key, $value);

// 獲取鍵的CAS令牌
$cas_token = null;
$memcached->getCas($key, $cas_token);

// 使用cas()函式比較並交換值
$new_value = 'new_example_value';
$result = $memcached->cas($cas_token, $key, $new_value);

if ($result) {
    echo 'Value updated successfully.';
} else {
    echo 'Failed to update value.';
}

在上面的示例中,我們首先建立了一個Memcached例項,並新增了一個Memcached伺服器。然後,我們設定了一個鍵值對,並使用getCas()函式獲取該鍵的CAS令牌。接下來,我們使用cas()函式比較並交換值。如果比較成功,鍵的值將被更新為給定的新值,並返回true。否則,返回false。根據返回結果,我們可以相應地處理更新成功或失敗的情況。

補充糾錯
上一個函式: Memcached::casByKey()函式
下一個函式: Memcached::appendByKey()函式
熱門PHP函式
分享連結