FavoriteLoading
0

PHP析构函数的小结

析构函数的最佳实践

我们使用析构函数完成对资源的及时释放

mysql_link = @mysql_connect($host, $user, $pwd);
		}
		//析构函数
		public function __destruct(){
			echo '
析构函数被调用..'; echo '
这里我们关闭我们的链接'; mysql_close($this->mysql_link); } } $dao = new DAOMySQL('localhost', 'root', 'root'); var_dump($dao->mysql_link); mysql_select_db('itbull'); $sql = 'SELECT * FROM `student`'; $res = @mysql_query($sql, $dao->mysql_link); while($row = mysql_fetch_assoc($res)){ echo '
';
		var_dump($row);
	}
	$dao = null;
	echo '
----------------------
'; $sql = 'SELECT * FROM `student`'; $res = @mysql_query($sql); while($row = mysql_fetch_assoc($res)){ echo '
';
		var_dump($row);
	}
	//....
	//....
	//...
	echo '
end 结束'; ?>

 

说明

(1)   关于在析构函数中释放资源的问题,如果我们对效率没有很高很特殊的要求,完全可以不使用析构函数.

(2)   如果我们不确定代码后面是否还会使用资源(比如链接),那么我们建议最好不要使用析构函数

(3)   项目有特殊和明确的要求时,我们可以使用析构函数,显示的销毁对象是,在析构函数中,释放资源.

垃圾回收机制

类定义的完善

欢迎分享本文,转载请保留出处!—重蔚自留地 站长邮箱:951076433@qq.com