我正在寻找合适的zf2语法来从数据库中选择时间戳/时间范围。我知道如何做出陈述。但是,似乎greaterThan()和lessThan()不能使用timestamps / datetime:
where = new Where();
$where->lessThan("datecolumn",$vardate);
我想选择超过2小时的所有记录。那么用zend框架2选择日期的正确方法是什么?
谢谢,我真的很感谢你的帮助
答案 0 :(得分:3)
这很好(只是样本) -
$select = new Select('album');
$created = date('Y-m-d H:i:s', strtotime("-2 hours"));
$where = new Where();
$where->lessThanOrEqualTo('created', $created);
$select->where($where);
$resultSet = $this->tableGateway->selectWith($select);
答案 1 :(得分:0)
在mapper方法中尝试这样的事情:
$selectRecords = $this->tableGateway->getSql()->select();
$selectRecords->columns(array('id'))
->where->greaterThanOrEqualTo('dateColumn', $startDate)
->lessThanOrEqualTo('dateColumn', $endDate)
$ resultSet = $ this-> tableGateway-> selectWith($ selectRecords);