首頁  >  文章  >  後端開發  >  php建構子與析構函式的實例

php建構子與析構函式的實例

怪我咯
怪我咯原創
2017-07-06 09:52:371530瀏覽

PHP析構函數建構子是相反的,它們被呼叫來一個物件從記憶體中銷毀,幫助我們釋放物件屬性所佔用的記憶體並銷毀物件相關的資源。

php建構子是物件建立完成後,第一個自動呼叫的方法,析構函式是當物件被釋放之前最後一個自動呼叫的方法。本文章向大家介紹php建構函式與析構函式。

php建構子

1.是物件建立完成後,「第一個」「自動呼叫」的方法
2.建構方法的定義,方法名稱是固定的,

在php4中:和類別名稱相同的方法就是建構方法
在php5:建構方法選擇使用魔術方法construct() 所有類別中宣告建構方法都使用這個名稱

優點:在改變類別名稱時,建構方法不用改變

魔術方法:在類別中寫出了某個魔術方法,這個方法對應的功能就會添加上
方法名稱都是固定的(都是系統提供好的),沒有自己定義的
每一個魔術方法,都是在不同時刻為了完成某一功能自動呼叫的方法
不同的魔術方法有不同的呼叫時機
都是以 開頭的方法
 construct(); destruct(); set(); ....

作用:為成員屬性初始化;

php析構函數

1.當物件被釋放之前最後一個「自動」呼叫的方法
使用垃圾回收器(java php),而c++手動的釋放
作用:關閉一些資源,做一些清理的工作

destruct();

php建構子與析構函式實例

class Person{ 
var $name; 
var $age; 
var $sex; 
//php4中的构造方法 
/*function Person() 
{ 
//每声明一个对象都会调用 
echo "1111111111111111"; 
}*/ 
//php5中的构造方法 
function construct($name,$age,$sex){ 
$this->name=$name; 
$this->age=$age; 
$this->sex=$sex; 
} 
function say(){ 
//$this->name;//对象中成员的访问使用$this 
echo "我的名字:{$this->name},我的年龄:{$this->age}<br>" 
} 
function run(){ 
} 
function eat(){ 
} 
//析构方法 
function destruct(){ 
} 
} 
$p1=new Person("zhangsan",25,"男"); 
$p2=new Person; 
$p3=new Person;

以上是php建構子與析構函式的實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn