麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > PHP > 正文

php中構造函數與析構函數詳解

2024-09-04 11:48:17
字體:
來源:轉載
供稿:網友

在php中構造函數與析構函數都是使用在類中的,下面我來給大家詳細介紹關于在php類中使用構造函數與析構函數的方法,有需要了解的朋友可參考參考.

析構函數

php析構函數的作用剛好和構造函數相反,構造函數是在對象實例化時自動執行,而析構函數在對象被銷毀時自動執行.

默認情況下,php僅釋放對象屬性所占用的內存,并不銷毀對象相關的資源,而利用析構函數在使用一個對象之后執行代碼來清除內存,并將對象從內存中銷毀.析構函數__destruct()結構形式如下:

實例代碼如下:

  1. function __destruct(){ 
  2.     /* class initialization code */ 
  3. }  

析構函數是由系統自動調用,不能帶參數.

實例代碼如下:

  1. <?php  
  2.  class des{ 
  3.   function __destruct(){ 
  4.    echo "運行結束,執行析構函數"
  5.   } 
  6.  } 
  7.  $p=new des(); /* 實例化類 */ 
  8.  $sum=0; 
  9.  for($i=0;$i<10;$i++){ 
  10.   $sum=$sum+$i
  11.   echo $sum ."<br>"
  12.  } 
  13. ?> 

析構函數的調用

php如何調用析構函數?當php腳本不再與對象相關時將調用析構函數.如果要明確地銷毀一個對象調用析構函數,可以給指向對象的變量不分配任何值,通常將變量賦值為NULL或者用unset()函數.

實例代碼如下:

  1. <?php  
  2.  class des{ 
  3.   function __destruct(){ 
  4.    echo "對象被銷毀,執行析構函數<br>"
  5.   } 
  6.  } 
  7.  $p=new des(); /* 實例化類 */ 
  8.  echo "程序開始<br>"
  9.  unset($p); /* 銷毀變量$p */ 
  10.  echo "程序結束"
  11. ?> 

構造函數

我們在使用類的過程中,有時需要立即為實例化對象的多個字段父子,如果通過手工,會帶來很多不可預測的問題,而如果在對象創建過程中自動執行,則會帶來很多方便.

php構造函數作用就是當類被實例化時,會自動執行的函數,又稱為構造函數.構造函數的聲明和其它函數一樣,知識構造函數的名稱是“__construct”固定的名稱,其結構形式如下:

實例代碼如下:

  1. function __construct([argument1,argument2,argument3]){ 
  2.     /* class initialization code */ 

實例代碼如下:

  1. <?php  
  2.  class user{ 
  3.   public $name
  4.   private $password
  5.   private $login
  6.   public function __construct($name,$password){ 
  7.    $this->name=$name
  8.    $this->password=$password
  9.    $this->login=time(); 
  10.   } 
  11.   function getlogin(){ 
  12.    return(date('M d,Y',$this->login)); 
  13.   } 
  14.  } 
  15.  $user=new user('Marry','888888'); 
  16.  echo "用戶名: "$user->name. "<br>"
  17.  print("訪問時間"$user->getlogin()); 
  18. ?> 

調用父類構造函數

構造函數可以被子類調用,php調用父類構造函數時必須使用parent關鍵字,否則不會自動調用.

實例代碼如下:

  1. <?php  
  2.  class task1{ 
  3.   public function __construct(){ 
  4.    echo "today is Monday""<br>"
  5.   } 
  6.  } 
  7.  class task2 extends task1{ 
  8.   function __construct(){ 
  9.    parent::__construct(); /* 調用父類構造函數 */ 
  10.    echo "I must work!"
  11.   } 
  12.  } 
  13.  new task2; 
  14. ?> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91麻豆精品国产91久久久无需广告 | 一区二区三区精品国产 | 91快色 | 亚洲视频在线网 | 久久精品免费网站 | 国产精品免费视频观看 | 亚洲精品久久久久久下一站 | 国产一区二区三区影视 | 色淫网站免费视频 | 2019中文字幕在线播放 | 91久久国产综合久久91猫猫 | 热re91久久精品国产99热 | 毛片一级片 | 欧美精品一区自拍a毛片在线视频 | 欧美视频一级 | 精品一区二区亚洲 | 国产午夜亚洲精品午夜鲁丝片 | 午夜视频啊啊啊 | 久久久青 | 欧洲成人av | 黄色av免费电影 | 久久久久国产精品久久久久 | 中文字幕激情视频 | 日韩毛片毛片久久精品 | 精品三区视频 | 国产精品久久久久av | 久久久久北条麻妃免费看 | 日本成人午夜 | 中国成人在线视频 | v片在线看 | 欧美日韩一区二区综合 | 中文字幕免费在线观看视频 | 成人毛片免费视频 | 一级做a爱片久久 | 欧美成人免费电影 | 他也色在线视频 | www.guochanav.com | 国产瑟瑟视频 | 久久6国产 | 色淫视频 | 一级黄色国产视频 |