如何在PHP中销毁类对象?

如何在PHP中销毁类对象?,php,class,object,destroy,Php,Class,Object,Destroy,我编写了一个用于存储全局变量/函数的小类。我的问题是-是否有必要在脚本完成后销毁类对象? 还是PHP会破坏这个对象本身 这是我的密码: $web=new c_web("myWeb"); $web->loadTemplate("/!framework/admin/template.htm"); $web->doStuff(); // script has finished - destroying required here? 如果我需要销毁它,我该怎么做?如果脚本完成,内存将被释放

我编写了一个用于存储全局变量/函数的小类。我的问题是-是否有必要在脚本完成后销毁类对象? 还是PHP会破坏这个对象本身

这是我的密码:

$web=new c_web("myWeb");
$web->loadTemplate("/!framework/admin/template.htm");
$web->doStuff();
// script has finished - destroying required here?

如果我需要销毁它,我该怎么做?

如果脚本完成,内存将被释放。您已经准备好了:)

不,您自己不需要销毁任何变量(对象就是变量):只要PHP脚本结束,它的变量就会被释放,相应的内存也会被释放

实际上,当到达变量的末尾时,它会自动被销毁——当您到达脚本的末尾时,它就是该脚本执行所引入的作用域的末尾


(回答对另一个答案的评论)

当然,当您的脚本由于错误而结束时,同样的情况也会发生:变量被释放,内存被释放。

正如@Nanne sayd所说,如果脚本完成,内存被释放,但是在某些情况下,您可能不需要这样做。

太好了-谢谢!如果脚本将因错误而终止,该怎么办?所有变量(数据库..)也会被销毁吗?当然,数据库连接可能需要“关闭”,但在大多数情况下,只有在执行过程中需要更多内存时,才需要担心这一点。因此,如果您在一个对象中加载X个数量的数据,然后您想再次这样做。但基本上:别担心,代码快乐:)那么开放数据库连接呢?我需要关闭它们吗?除非使用持久连接,否则当PHP脚本结束时,连接会自动终止。