0
这是我的查询:Zend的分页程序限行(优化)
class services extends Zend_Db_Table{
function Get_Services($user_id){
$DB = Zend_Db_Table_Abstract::getDefaultAdapter();
$select = $DB->select()
->from(array('p' => 'phone_service'))
->join(array('u' => 'user_preferences'), 'u.phone_service_id = p.phone_service_id')
->where('u.user_preferences_name = ?', 'is_user_package_active')
->where('p.user_id = ?', $user_id);
return $select;
}
}
这是我的控制器:
class ServicesController extends Zend_Controller_Action{
$instance = new services();
$select = $instance->Get_Services($user_id);
$adapter = new Zend_Paginator_Adapter_DbSelect($select);
$paginator = new Zend_Paginator($adapter);
$page=$this->_getParam('page',1);
$paginator->setItemCountPerPage(10);
$paginator->setCurrentPageNumber($page);
$paginator->setPagerange(5);
}
什么我做的是,首先我查询所有行,然后执行以下操作:
$adapter = new Zend_Paginator_Adapter_DbSelect($select);
$paginator = new Zend_Paginator($adapter);
我的问题是,我如何优化它,使它从结果查询只有10行,不是所有的人?
但在此之前,我正在查询和应用Zend_Paginator_Adapter_DbSelect它有什么关系? – 2012-04-04 10:56:01
我没有看到你提出查询。您正在创建一个“选择”对象,但它只是一个对象,在您通过'fetchXxx()'方法或分页器自己创建它们之前,不会进行任何查询。 – bububaba 2012-04-04 10:58:05