しばらくの間、次の例を見つけました:
$robots = Robots::find(array("limit" => 100));
limit に "from" と "offset" の 2 つの値を定義することはできますか? Zend Framework では、次のような Db アダプター関数で可能でした。
$db->select()->limit($from, $offset)
これを試して:
$collection = Model::find(array(
"limit" => array('number' => $from, 'offset' => $offset)
));
OFFSET
そのようなものをサポートするPHQLをいつでも使用できます(コントローラー内):
$sql = 'SELECT * FROM Robots LIMIT 100 OFFSET 10';
$stmt = $this->modelsManager->createQuery($sql)
$results = $stmt->execute();
limit パラメータは int 値しか受け入れられません。この例も機能します。
$offset = 20;
$from = 10;
$collection = Model::find(array("limit" => $from . ',' . $offset));
これを行うと、クエリをかなりカスタマイズ可能にすることができます。
<?php
$notifications = \UserNotification::find([
"user_id = :user_id: ORDER BY date DESC LIMIT 5",
"bind" => [
"user_id" => 1
]
]);