dongping9475 2016-03-03 20:38
浏览 12
已采纳

如何在PDO中调用父破坏?

I want destroy the PDO connection, I can do this creating a private variable with this structure: $this->_pdo = new PDO(credentials here) and then in the same class:

function __destruct()
{
    $this->_pdo = NULL;
}

But for some operation like lastInsertedId I need to call the parent construct. So I need to use this structure:

public function __construct($dbhost, $dbname, $dbuser = 'root', $dbpass = '', $dbtype = 'mysql') {
    parent::__construct($dbtype . ':host=' . $dbhost . ';dbname=' . $dbname, $dbuser, $dbpass);
} 

How can I destroy the connection using the parent construct?

  • 写回答

1条回答 默认 最新

  • douqujin2767 2016-03-03 20:53
    关注

    There isn't a good way to do this unfortunately. You've got two scenarios here

    1. You're instantiating PDO and saving it as a class member. At this point you have a variable pointing to the instance so removing that reference will cause it to be eligible for garbage collection
    2. You're instantiating PDO from a child class. Here you can't destroy the instance because the child IS the instance. You'd have to go back to the variable holding the instance and unset() it or something similar

    Without the class itself I'm not sure we can be more help than this.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Llama如何调用shell或者Python
  • ¥20 eclipse连接sap后代码跑出来空白
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案