【问题标题】:automatically convert query to zend db select自动将查询转换为 zend db select
【发布时间】:2011-08-22 00:58:26
【问题描述】:

因为我需要为 zend 分页器使用 zend db select 对象,所以我想知道是否有人找到了一种自动转换机制的实现 b/w 对 zend db select 对象的正常查询,或者实际上已经实现了这种自动转换和愿意分享代码...

请注意,我不是在问如何将查询转换为 zend db select...我知道该怎么做...我问是否有人已经拥有/知道此类过程的实际编码实现,因为我不想浪费时间重新发明轮子......

【问题讨论】:

    标签: php mysql zend-framework


    【解决方案1】:

    您应该能够使用空适配器,并且只需传入计数而不是查询。您需要事先自己计算出计数(总记录数)。

    $total = 531; // from COUNT(*) or similar
    
    $paginator = Zend_Paginator::factory($total);
    $paginator->setCurrentPageNumber($page);
    $paginator->setItemCountPerPage($perPage);
    $paginator->render();
    

    这允许您仅使用分页器来呈现分页,而不是实际对数据应用限制。如果你有页面和每页的项目,你应该能够很容易地生成一个 LIMIT 子句。

    您还可以制作自己的适配器,该适配器接受(字符串)查询,并使用适配器将限制应用于它的末尾。这样,您还可以让它实现 getItems() 方法,使其标准化。

    【讨论】:

      猜你喜欢
      • 2011-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多