本節內容:
php構造函數與析構函數
例子:
復制代碼 代碼示例:
class Person{
public $name;
public $age;
public function __construct($name,$age){
$this->name = $name;
$this->age = $age;
}
function __destruct(){
echo $this->name."銷毀資源,關閉數據庫等
";
}
}
$p1 = new Person("百度",25);
//$p1=null;
$p2 = new Person("新浪",23);
echo $p1->name;
echo "
哈哈哈哈
";
?>
一、構造函數比較簡單。__construct()
1,創建對象(對象實例化)時,初始化一些值;
2,構造函數沒有返回值。
二、析構函數:__dustruct()
1、主要作用是釋放資源:如釋放數據庫連接、圖片資源,以及對象等;
2、析構函數會被自動調用;
3、析構函數沒有返回值,也不接收參數;
4、正常情況下,先創建的對象,后銷毀;
5、析構函數調用時間:
1)、當程序退出(進程結束)時。
2)、當一個對象稱為垃圾對象時,該對象的析構函數也會被調用。所謂垃圾對象,是指沒有任何變量再引用它。一旦對象成為垃圾對象,析構函數立即被調用。
6、析構函數銷售的是對象里面的資源,并不銷毀對象本身。如:在執行$p1=null后,輸入echo $p1->name會報錯,而$p3=$p1不會報錯。