🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 析构方法作用: 主要是用于释放资源(数据库连接,图片资源.....,销毁某个对象),回收内存和CPU 1.析构方法会自动被调用 2.主要用于关闭,销毁资源,目的是回收 3. 调用顺序是先创建的对象,后被销毁,栈的先入后出 4. 析构方法什么时候被调用? a. 当进程结束的时候 b. 当一个对象成为垃圾对象的时候,该对象的析构方法也会 被调用 c.垃圾对象:当一个对象没有任何引用指向他的时候 d.当对象成为垃圾对象,析构方法会立即调用,从而回收对象占用的内存。 析构方法没有返回值,释放资源不是销毁对象本身,销毁对象前,系统自动调用该类的析构方法,一个类最多只有一个析构方法。 ![](https://box.kancloud.cn/cef8b1b3eeb5c4c34c0f89dea04619d0_867x423.png) ~~~ <? echo "<meta charset='utf-8'>"; class Person{ public $name; public $age; //构造方法 public function __construct($name,$age){ $this->name=$name; $this->age=$age; } //析构方法 function __destruct(){ echo $this->name."销毁资源<br/>"; } } $p1=new Person("贾宝玉",15); $p2=new Person("林黛玉",13); ~~~ ~~~ $p1=new Person("贾宝玉",15); $p1=null; //此时贾宝玉会被先销毁 $p2=new Person("林黛玉",13); ~~~