0

我有一个原始查询,例如:

SELECT * FROM caps WHERE `items` RLIKE '[[:<:]]20003[[:>:]]';

我已将此查询转换为“zf3 select”格式。我正在使用Zend\Db\Sql\Select和扩展TableGateway. 这是转换后的 zf3 查询

$this->select(function (Select $s) use ($itemId) {
   $s->where(new Expression(sprintf('(items RLIKE "[[:<:]]`%d`[[:>:]]")', $itemId)));
});

当我运行页面时,我没有收到任何错误。但是当我打印“resultSet”时,该where部分没有附加到查询中。我怎样才能在zf3中写出来?

4

1 回答 1

0

我找到了解决方案。我只是用expression我的where子句。现在工作正常。这是我的新查询的一部分。

$s->where->expression('items RLIKE "[[:<:]]'.$itemId.'[[:>:]]"');
于 2020-07-31T09:24:21.497 回答