我在社区里为我的问题绊倒了,但我找不到解决办法--也许是具体的解决办法。下面是我在PHP中执行的函数/操作的顺序:
如果我不创建object_2,一切都很好。我做错什么了?
发布于 2012-03-05 20:42:03
感谢大家的帮助找到解决办法。链接标识符解决方案就像前面提到的那样,对我来说有点差。在php.net,对我的问题进行了详细的描述,并给出了一些解决方法:
以下是共享链接的工作方式:-每个链接都是一个资源。默认情况下,mysql_connect()查找具有相同参数的资源。如果存在,它将返回现有资源。-每次将该资源分配给变量时,都会增加资源的引用计数。-当引用递减为零时,基础TCP/套接字连接将关闭。-在该资源之外的变量的每一个赋值都会减少引用计数。(这包括一个超出作用域的函数级变量)- mysql_close()还会减少引用计数。 注意最后两点: mysql_close()和重新分配变量,减少链接的引用计数。
发布于 2012-03-05 14:31:51
这是按计划进行的。来自MySQL文档
“临时桌子 创建表时可以使用临时关键字。临时表仅对当前连接可见,并在连接关闭时自动删除。这意味着两个不同的连接可以使用相同的临时表名,而不会相互冲突,或者使用同名的现有非临时表。(现有表被隐藏,直到删除临时表。)
为了避免这种情况发生,只是不要显式地关闭连接。来自用于mysql_close()的PHP
“使用
mysql_close()通常是不必要的,因为非持久性打开的链接在脚本执行结束时会自动关闭。参见释放资源。”
相反,您应该将mysql_connect()返回的连接资源存储在局部变量中,以便当对它的所有引用都超出范围时,PHP垃圾收集器可以自动关闭连接。
发布于 2012-03-05 14:32:38
如何解决您的问题:在class_1中添加一个链接标识符,否则mysql库将使用最后一个库(您已经关闭了)。
https://stackoverflow.com/questions/9568217
复制相似问题