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;