$db_adapter = new Zend\Db\Adapter\Adapter(array(
'driver' => 'pdo_mysql',
'database' => 'xxxx',
'username' => 'xxxx',
'password' => 'xxxx',
'hostname' => 'xxxx'
));
$select1 = new Zend\Db\Sql\select();
$select1-> from('states');
$select1-> columns(array('name', 'id'));
$select1-> where ->notEqualTo('name', 'Florida');
$select1-> limit(5);
echo "<br />Query: ". $select1-> getSqlString() . '<br />';
$adaptor = new Zend\Paginator\Adapter\DbSelect($select1, $db_adapter);
echo "<br />Row count: ". $adaptor->count();
这是问题所在:我有一个名为 states 的表,其中有 73 条记录。当我运行上面的脚本时,我不断得到 73 条记录,看起来LIMIT 子句根本没有生效。我不确定我做错了什么,除非限制条款根本不起作用。这是输出:
查询: SELECT "jb_states"."name" AS "name", “jb_states”。“id”作为“id”来自“jb_states” WHERE "name" != 'Florida' LIMIT '5' 行数: 73
Zend Framework 2.2.4版本,数据库:mysql