【问题标题】:is it possible implement php session handler with arangodb是否可以用 arangodb 实现 php 会话处理程序
【发布时间】:2014-02-24 08:19:24
【问题描述】:

几天前,我在 arangodb 官方网站上发布了我的问题,但运气不好,没有人回答。所以我来到这里。以下是我的问题:

只想知道如果使用 arangoDb 作为 php sessionHandler ,如何删除过期的会话数据!

如果使用mogodb或者mysql来存储session数据,我们可以使用这样的语句来删除过期数据:db.session.remove( { expire: { $gt :} } ) 或 sql :从 tbl_session 中删除 expire<:expire>

我只想知道如何在 arangodb 中实现这一点。 :)

【问题讨论】:

标签: php session arangodb


【解决方案1】:

我们尚不支持修改 AQL。 所以你需要执行一段代码:

var q = db._query("FOR s in session filter s.expire < 1393231738788 return s");
while (q.hasNext()) {
  db.session.remove(q.next());
}

【讨论】:

    【解决方案2】:

    mchacki 的答案在 ArangoDB 2.2 之前是正确的。

    自 2.2 以来,我们确实修改了查询,因此我们数据库的新查询如下所示:

    FOR s IN sessions
      FILTER s.expire < DATE_NOW()-86400000
      REMOVE s IN sessions
    

    在这个例子中,一天前的会话将被删除。

    【讨论】:

      猜你喜欢
      • 2015-09-05
      • 1970-01-01
      • 2013-08-08
      • 1970-01-01
      • 2021-11-22
      • 2015-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多