php - 修改并重做 codeigniter 中的最后一个查询

标签 php mysql codeigniter activerecord

我可以获取使用事件记录类进行的最后一次查询并修改它的某些部分并在 codeigniter 中重做该查询吗?我正在尝试获取分页的总页数。我无法直接编写我的查询,因为它是在运行时在一些 for 循环和 if 语句中动态创建的,具体取决于提交给页面的表单。

最佳答案

您是否因为总页数而运行查询两次?如果是,请检查 SQL 中的 SQL_CALC_FOUND_ROWSFOUND_ROWS()

$this->db->select("SQL_CALC_FOUND_ROwS id",false);
$this->db->any_AR_function(....);
$this->db->limit(...);
$result = $this->db->get();

在此之后你可以这样调用:

$this->db->select("FOUND_ROWS() as count",false);
$count = $this->db->get();

希望这就是你想要的。

关于php - 修改并重做 codeigniter 中的最后一个查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8105343/

相关文章:

php - 如何在 CodeIgniter 的一个 View 中使用多种语言?

php - 具有不同的服务器端和数据库字符集 - CodeIgniter

javascript - 模态如何从图像中获取数据?

javascript - 重新编码函数

php - MySQL连接3个表

php - 如何根据同一 SELECT 中的不同 ID 从表中获取两个值

php - 如何在 Controller Codeigniter 中显示验证消息

php - 只能获取 $row ['id' 的一个值]

php - 如何处理数据库和编码中的硬编码内容

php - 小编辑器没有获得帖子值(value)