Php 是否可以在一个Phalcon\Mvc\Model::find()方法中指定两个极限值(起始、偏移)?
一时间,我发现了以下例子:Php 是否可以在一个Phalcon\Mvc\Model::find()方法中指定两个极限值(起始、偏移)?,php,phalcon,Php,Phalcon,一时间,我发现了以下例子: $robots = Robots::find(array("limit" => 100)); 是否可以为“限制”、“起始”和“偏移”定义两个值? 在Zend Framework中,可以使用Db适配器功能,如下所示: $db->select()->limit($from, $offset) limit参数不能只接受int值。 这个例子也适用: $offset = 20; $from = 10; $collection = Model::find
$robots = Robots::find(array("limit" => 100));
是否可以为“限制”、“起始”和“偏移”定义两个值?
在Zend Framework中,可以使用Db适配器功能,如下所示:
$db->select()->limit($from, $offset)
limit参数不能只接受int值。 这个例子也适用:
$offset = 20;
$from = 10;
$collection = Model::find(array("limit" => $from . ',' . $offset));
您可以始终使用PHQL,它支持控制器中的偏移量:
$sql = 'SELECT * FROM Robots LIMIT 100 OFFSET 10';
$stmt = $this->modelsManager->createQuery($sql)
$results = $stmt->execute();
试试这个:
$collection = Model::find(array(
"limit" => array('number' => $from, 'offset' => $offset)
));
通过执行以下操作,您可以使查询非常可自定义:
<?php
$notifications = \UserNotification::find([
"user_id = :user_id: ORDER BY date DESC LIMIT 5",
"bind" => [
"user_id" => 1
]
]);
您只需传递另一个名为offset的元素并在其中指定值,请参阅下面的示例: $orders=订单::findarray 订单=>id描述, 极限=>10, 偏移量=>0 ; 有关详细信息,请参阅以下链接:
我不想在这里使用原始查询。。Phalcon\Mvc\Model在这里提供了非常好的抽象层。但不管怎样,你的答案是正确的,谢谢:在1.3.2版上运行良好,谢谢。如果需要从第1页开始使用$params['limit']和$params['page']分页,可以执行以下操作:$params['limit']=array'number'=>$params['limit'],'offset'=>$params['page']-1*$params['limit'];取消设置$params['page'];