English | 简体中文 | 繁體中文
查询

Memcached::touch()函数—用法及示例

「 更新一个已存在的 key 的过期时间 」


函数名:Memcached::touch()

适用版本:PHP 5 >= 5.4.0, PHP 7, PECL memcached >= 0.1.0

函数描述:Memcached::touch() 方法用于更新一个已存在的 key 的过期时间。

语法:bool Memcached::touch(string $key, int $expiration)

参数:

  • $key:要更新过期时间的键名。
  • $expiration:新的过期时间,以秒为单位。

返回值:成功时返回 true,失败时返回 false。

示例:

// 创建一个新的 Memcached 实例
$memcached = new Memcached();

// 连接到 Memcached 服务器
$memcached->addServer('localhost', 11211);

// 存储一个键值对,过期时间为 60 秒
$memcached->set('mykey', 'myvalue', 60);

// 获取键值对
$value = $memcached->get('mykey');
echo $value; // 输出:myvalue

// 更新键的过期时间为 120 秒
$result = $memcached->touch('mykey', 120);
if ($result) {
    echo '过期时间更新成功';
} else {
    echo '过期时间更新失败';
}

// 再次获取键值对
$value = $memcached->get('mykey');
echo $value; // 输出:myvalue

// 等待 130 秒后再次获取键值对
sleep(130);
$value = $memcached->get('mykey');
echo $value; // 输出:false,键已过期

上述示例中,我们首先创建一个 Memcached 实例,并连接到本地的 Memcached 服务器。然后,使用 set() 方法存储一个键值对,并设置过期时间为 60 秒。接着,使用 touch() 方法更新键的过期时间为 120 秒。最后,通过 get() 方法获取键值对,并在等待过期时间后再次获取。

补充纠错
热门PHP函数
分享链接