我需要比较DATETIME的DATE格式。
在ZF 2.3.5之前,以下代码工作正常:
$select->where('DATE(arrival_date) <= DATE(NOW())');
$select->where('DATE(departure_date) >= DATE(NOW())');
$select->where('enable = true');
使用ZF 2.4.2+它不再起作用并产生以下错误:
无法从接口Zend \ Db \ Sql \ Predicate \ PredicateInterface继承先前继承或覆盖常量TYPE_IDENTIFIER
我尝试了以下(没有错误)。问题是&#34; arrival_date&#34;是DATETIME格式,我只需要与DATE进行比较。
$where = new Zend\Db\Sql\Where();
$where->lessThanOrEqualTo('arrival_date', date('Y-m-d'));
$where->greaterThanOrEqualTo('arrival_date', date('Y-m-d'));
$where->equalTo('enable', true);
$select->where($where);
理想情况下,此代码应该有效,但不会:
$select->where(new Zend\Db\Sql\Predicate\Expression('DATE(arrival_time) <= ?', 'DATE(NOW())'));
我迷路了,不知道吗?