PHP中常用的魔術方法

來源:互聯網
上載者:User

標籤:而不是   highlight   str   new   注意   lstat   get   bsp   判斷   

我們在PHP中經常用到魔術方法,像構造方法,析構方法等等魔術變數,下面總結一下一些常用的魔術變數:

__construct(),__destruct(),__clone(),__autoload(),__tostring(),__invoke(),__set(),__get(),__unset(),__isset(),__call(),__callstatic;

1,__constuct()建構函式

通常執行個體化完一個對象之後,都要對該對象的屬性進行初始化!在執行個體化一個對象的時候,PHP系統會自動的調用一個名字叫作__construct()的方法,我們把這個方法叫作“構造方法”!

其中,構造方法可以沒有參數!

<?phpclass Stu { public $stu_name; public $stu_age;//構造方法,執行個體化時自動調用  public function __construct($name,$age){             $this->stu_name = $name;      $this->stu_age = $age;   }  }//執行個體化stu對象$stu = new Stu(‘孫悟空‘,‘500‘);

2.__destruct()析構方法

  與構造方法是一對,構造方法是在一個對象“出生”的時候由系統自動調用的,而析構方法是在一個對象“消失”的時候由系統自動調用的!

析構方法的名字叫__destruct();注意裡面不能有任何的參數!

<?php//析構方法public function __destruct(){}?>

注意:析構方法是在對象銷毀之前調用的!  

作用:

析構方法的作用一般是用來釋放該對象所佔用的額外的資源,而不是銷毀該對象本身!

3,__clone()複製

觸發時機:是在複製一個對象的時候,對新對象進行初始化的工作

//複製方法在複製對象的時候對新對象的初始化工作public function __clone(){  $this->is_clone=true;}

  

思考:

複製出來的對象還是不是Student類中的一個執行個體呢?

我們可以利用instanceof運算子來進行判斷!

instanceof就是用來判斷某個對象是否是某個類的一個執行個體!

需要兩個運算元,前面是一個物件變數,後面是一個類名!返回一個布爾值!

var_dump($stu instanceof Stu);     //返回bool(true)

  

 

PHP中常用的魔術方法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.