Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在mysql/php中为临时表获取持久数据库连接_Php_Mysql - Fatal编程技术网

在mysql/php中为临时表获取持久数据库连接

在mysql/php中为临时表获取持久数据库连接,php,mysql,Php,Mysql,我有一个logger类,它在多个PHP页面上分别实例化 构造函数执行以下操作 [ PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_PERSISTENT =>

我有一个logger类,它在多个PHP页面上分别实例化

构造函数执行以下操作

    [
      PDO::ATTR_EMULATE_PREPARES   => false,
      PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
      PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
      PDO::ATTR_PERSISTENT => true,
    ];
因此,理论上,logger类的每个实例都共享一个到数据库的相同的、单独的连接。每个实例都会创建一个临时表,该表应该创建一次(并在后续尝试中出错,确实如此)。每个实例都将记录插入到同一个临时表中

但这不是我看到的行为。有时,最近(在同一个PHP会话中)创建的记录会消失。有时,它们会再次出现。只有最后添加的记录才是唯一可靠显示的记录


似乎每次创建logger类时,我都会得到一个新的数据库连接实例,或者有时会得到一个旧的连接。它从未可靠地连接到初始连接。是什么导致了这种情况?

我将数据库的PDO变量设置为静态属性,以进一步确保每次创建类时不会获得到数据库的新连接,即使这样也没有什么区别。表中的数据仍在不断变化。你解决了这个问题吗?