$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();
ここに問題があります: 73 レコードを含む states というテーブルがあります。上記のスクリプトを実行すると、73 件のレコードが取得され続けますが、LIMIT 句がまったく有効にならないようです。limit 句が単に機能していない限り、何が間違っているのかわかりません。出力は次のとおりです。
クエリ: SELECT "jb_states"."name" AS "name", "jb_states"."id" AS "id" FROM "jb_states" WHERE "名前" != 'フロリダ' LIMIT '5' 行数: 73
Zend Framework バージョン 2.2.4、データベース:mysql