Как реализовать db close в codeigniter - PullRequest
0 голосов
/ 16 мая 2019

Я создаю веб-сайт с 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(); 

где я могу поставить код, чтобы закрыть соединение? до возвращения или после возвращения?

этот метод эффективен для создания эффективных соединений с базой данных?

Ответы [ 2 ]

1 голос
/ 16 мая 2019

Существует метод db->close().В среде PHP, в которой не используются постоянные соединения, нет необходимости вызывать ее.В частности, для MySQL все открытые непостоянные соединения MySQL и наборы результатов автоматически уничтожаются, когда скрипт PHP завершает свое выполнение.Что в CodeIgniter происходит сразу после завершения метода контроллера.Таким образом, нет необходимости закрывать соединение БД.В противном случае вы можете вызвать оператор закрытия соединения: $this->db->close(); до возврата.

0 голосов
/ 16 мая 2019

Если вы установите pconnect (постоянное соединение) в файле конфигурации на FALSE, то вам не нужно вручную закрывать соединения, поскольку CodeIgniter автоматически закроет соединения, но если вы хотите явно сообщить CodeIgniter Чтобы закрыть соединение, вы можете позвонить $this->db->close(); до возврата.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...