PHP 魔術方法 PHP 類別中的魔術方法

WBOY
發布: 2016-07-28 08:25:33
原創
896 人瀏覽過

定義:

     PHP類別中以兩個下畫線「__」開頭的方法稱為魔術方法。

分類:

     例如:建構方法:__construct;析構法:__destruct;動態重載:__set()、__get()、__call()、__callStatic();物件的複製:__clone()

應用場景:

    1、當程式試圖修改一個不存在或不可見的類別屬性時,PHP引擎將會呼叫__set()方法,當然前提是該方法在類別中被定義。 __set()的定義格式如下:

    function __set($name,$value){

              其中,$ name是動態建立的變數名,$value是該變數的值。

   2、當程式試圖讀取一個不存在或不可見的類別屬性時,PHP引擎將會呼叫__get()方法,當然前提是該方法在類別中被定義。 __get()的定義格式如下:

    function __get($name){

          //實現細節

建立的變數名。

   3、當程式試圖呼叫一個不存在或不可見的類別方法時,PHP引擎將會呼叫__call()方法,當然前提是該方法在類別中被定義。 __call()方法的定義格式如下:

     function __call($name,$args){

           其中, $name是動態建立的方法名,$args是此方法的參數,以陣列的形式存在。

    4、由PHP5.3.0開始,可使用__callStatic()動態建立靜態方法。 __callStatic()的定義格式如下:

     function __callStatic($name,$args){

         其中,$ name是動態建立的方法名,$args是此方法的參數,以陣列的形式存在。

    5、__clone()方法一旦定義,類別在複製時就會自動呼叫它,這樣我們就可以在__clone()方法中給引用屬性重新開闢記憶體。 __clone()定義格式如下:

     function __clone(){

         //實現細節 以上就介紹了PHP 魔術方法 PHP 類別中的魔術方法,包括了PHP 魔術方法的內容,希望對PHP教程有興趣的朋友有所幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板