【问题标题】:How to implement db close in codeigniter如何在codeigniter中实现db close
【发布时间】:2019-05-16 03:12:54
【问题描述】:

我用 codeigniter 建立了一个网站,我的模型中有一个像这样的类

public function get_order_items($order_id) {

        $this->db
                ->select('oi.*, i.*, s.*')
                ->from('order_items oi')
                ->join('item i', 'oi.item_id = i.item_id', 'left')
                ->join('item_size s', 'oi.size_id = s.size_id', 'left')
                ->where('oi.order_id', $order_id);
        $query = $this->db->get();
        return $query->result();
      }

如何实现用这段代码关闭这个查询

$this->db->close(); 

关闭连接的代码应该放在哪里?返回前还是返回后?

这种方法对建立与数据库的高效连接有效吗?

【问题讨论】:

  • 请参考此link 了解如何接受答案。要将答案标记为已接受,请单击答案旁边的复选标记以将其从灰色切换为已填充。

标签: php database codeigniter


【解决方案1】:

有一个db->close() 方法。在不使用持久连接的 PHP 环境中,没有真正需要调用它。特别是对于 MySQL,当 PHP 脚本完成执行时,所有打开的非持久 MySQL 连接和结果集都会自动销毁。 CodeIgniter 在控制器方法完成后立即发生。所以不需要关闭数据库连接。否则,您可以在返回之前调用关闭连接语句:$this->db->close();

【讨论】:

    【解决方案2】:

    如果您将配置文件中的pconnect(持久连接)设置为FALSE,那么您不必手动关闭连接,因为 CodeIgniter 会自动关闭连接,但如果您想明确告诉 CodeIgniter要关闭连接,您可以在返回之前调用$this->db->close();

    【讨论】:

      猜你喜欢
      • 2016-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-09
      • 1970-01-01
      • 2018-10-02
      • 1970-01-01
      相关资源
      最近更新 更多