我在 Zend Framework 2 中与临时用户作斗争。我想要一个带有临时用户的 CMS。我给他们一个开始日期和结束日期,但我想检查他们是否处于活动状态并且当前日期在开始日期和结束日期之间。
“过期”在数据库中没有价值,所以我无法检查数据库。如果用户处于活动状态且未过期,是否可以从 zfcUser 签入登录?
我对用户的概述在检查时效果很好,所以当用户过期时我会得到另一个象形图。例子:
public function customState()
{
$state = $this->getState();
$curDate = new \DateTime('midnight');
//if (state = 1 and current date after startdate) AND (current date before enddate OR enddate is empty)
if (($state == '1' && $this->startdate <= $curDate) && ($curDate <= $this->enddate || !isset($this->enddate))) {
$this->setState('1');
}
//if state = 1 and currentDate NOT between start- and enddate, set state on 2
elseif ($state == '1' && ($this->startdate > $curDate || $curDate > $this->enddate)) {
$this->setState('2');
}
//if state = 2, set state on 3
elseif ($state == '2') {
$this->setState('3');
}
}
所以我创建了一个带有“活动”、“过期”和“非活动”的“customState”。但是在数据库中我只有一个状态(活动和非活动)以及开始和结束日期。有人知道如何解决这个问题吗?