2012-03-11 53 views
2

我正在玩数据库中的会话,我对此很陌生。在ZF中的方法使得它在数据库中创建了漂亮的ID,但是我没有看到数据库在删除任何会话后,即使我将生命周期设置为20秒。会话不会自动从数据库中删除自己?

数据库是否应该删除它们本身,还是取决于我?还是我必须做的设置?谢谢!

+0

该数据库将不会自动删除它们(它没有“超时”或如何处理它的概念)。框架本身应该是双重的:1)即使存在数据库条目,它也不应该接受*过期的会话2)它应该提供一种机制*定期从数据库中清除会话信息。希望这些都在ZF文档中介绍。 – 2012-03-11 06:29:11

回答

2

它看起来像destroy()Zend_Session_SaveHandler_dbTable的方法可能是您正在寻找的假设您使用Zend_Session_SaveHandler_dbTable保存您的会话。

下面是该方法的定义:

public function destroy($id) 
    { 
     $return = false; 

     if ($this->delete($this->_getPrimary($id, self::PRIMARY_TYPE_WHERECLAUSE))) { 
      $return = true; 
     } 

     return $return; 
    }