我应该在php __destruct()中使用unset吗?

6

在类中使用后,是否将变量取消设置是一个好的实践?或者这是可选的?

如果这是一个好的实践,使用unset函数有什么好处?

1个回答

12

在PHP中,您真的不需要担心清除变量声明,因为其垃圾回收会为您处理所有这些。您的__destruct()方法主要用于关闭持久连接等任务。


好的,谢谢你的帮助。简而言之,在 PHP 中 __destruct() 经常用于关闭 MySQL 连接?这正确吗? - jjz
1
实际上,PHP现在也可以正确处理关闭MySQL连接了,所以您也不需要担心这些问题。也许为了与旧版本兼容性而包含它并没有什么坏处,但是__destruct直到PHP5才被添加,所以我甚至不确定它是否重要。如果您有一个FTPConnection类,它保持着一个持久的远程FTP连接,以便您可以向其发送命令,那么您将想使用__destruct来优雅地关闭残留的连接。希望这可以帮助到您。 - nortron
我个人仅在通过PDO关闭连接时使用此方法,例如 $this->pdo = null;,出于安全考虑。 - Thielicious

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接