php - 如何检查 Couchbase 中是否存在 key ?

标签 php couchbase

我已经想到了两种我不太喜欢的方法:

  1. 在 try..catch.. 中调用 touch(key, null) 并返回 false 捕获部分。但后来我改变了 ttl 这不是很好 为了我。
  2. 在 try..catch.. 中调用 add(key, value) 并返回 false 来自 catch 部分 - 这会降低效率,因为我 必须删除我刚刚不必要地添加的 key 。

顺便说一句,我的环境是 PHP。

有什么建议吗?

谢谢!

最佳答案

Couchbase 目前还没有提供 exists 方法,但是你可以使用 adddelete 来做这件事,这也行对 Memcache/Memcached 有用

public function exists($key)
{
    if ($this->object->add($key, true)) {
        $this->object->delete($key);
        return false;
    }
    return true;
}

https://github.com/twinh/widget/blob/master/lib/Widget/Couchbase.php#L118

关于php - 如何检查 Couchbase 中是否存在 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14754007/

相关文章:

go-couchbase 客户端更新功能

php - 如何在调整窗口大小时调整 YouTube 播放器的大小

php - codeigniter 将许多图像名称插入数据库

PHP - 如何阻止函数打印额外的 ||在最后?

erlang - couchbase: epmd: 节点名已被占用 couchbase babysitter_of_ns_1

couchdb - 如何在Couchbase中批量插入文档?

c# - 使用 HashTable 属性序列化一个对象并存储在 CouchBase 中

php - 如何使用 PHP 将文件保存到 MySQL BLOB?

php - MySQL 为所有用户更新多行

couchbase - 模拟连接如何在 Couchbase 中工作?